Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(52)

Issue 2774223002: CompositorWorkerProxyClientImpl to CompositorProxy cross thread reference is using WeakMember (Closed)

Created:
3 years, 9 months ago by keishi
Modified:
3 years, 8 months ago
CC:
chromium-reviews, shans, rjwright, oilpan-reviews, Mads Ager (chromium), blink-reviews-animation_chromium.org, sof, eae+blinkwatch, blink-reviews-dom_chromium.org, dglazkov+blink, darktears, blink-reviews, kinuko+watch, rwlbuis, kouhei+heap_chromium.org, Eric Willigers
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

CompositorWorkerProxyClientImpl to CompositorProxy cross thread reference is using WeakMember Because of a bug in Oilpan causing DCHECK to be skipped, we failed to detect that CompositorWorkerProxyClientImpl to CompositorProxy reference isn't using CrossThreadWeakPersistent. The DCHECK bug will be fixed in https://codereview.chromium.org/2773013002/ . This CL splits out the CompositorProxy registration to a new class so we don't need to put CrossThreadWeakPersistents in a HashMap. BUG=705872 Review-Url: https://codereview.chromium.org/2774223002 Cr-Commit-Position: refs/heads/master@{#461972} Committed: https://chromium.googlesource.com/chromium/src/+/0af77d69187ee8a529072cb3995bd111aaed5864

Patch Set 1 #

Patch Set 2 : fix #

Patch Set 3 : fix #

Patch Set 4 : fix #

Patch Set 5 : fix #

Patch Set 6 : fix #

Total comments: 4

Patch Set 7 : fix #

Patch Set 8 : Added comments #

Total comments: 5

Patch Set 9 : fix #

Unified diffs Side-by-side diffs Delta from patch set Stats (+125 lines, -61 lines) Patch
M third_party/WebKit/Source/core/dom/AnimationWorkletProxyClient.h View 1 2 3 4 5 6 7 1 chunk +3 lines, -1 line 0 comments Download
M third_party/WebKit/Source/core/dom/CompositorProxy.h View 1 2 3 4 5 6 7 3 chunks +3 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/core/dom/CompositorProxy.cpp View 1 2 3 4 5 2 chunks +6 lines, -1 line 0 comments Download
M third_party/WebKit/Source/core/dom/CompositorProxyClient.h View 1 2 3 1 chunk +1 line, -2 lines 0 comments Download
M third_party/WebKit/Source/core/dom/CompositorWorkerProxyClient.h View 2 chunks +2 lines, -7 lines 0 comments Download
M third_party/WebKit/Source/modules/compositorworker/CompositorWorkerMessagingProxy.cpp View 1 2 3 1 chunk +3 lines, -1 line 0 comments Download
M third_party/WebKit/Source/modules/compositorworker/CompositorWorkerThreadTest.cpp View 1 chunk +6 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/web/AnimationWorkletProxyClientImpl.h View 1 2 3 4 5 6 7 3 chunks +5 lines, -6 lines 0 comments Download
M third_party/WebKit/Source/web/AnimationWorkletProxyClientImpl.cpp View 1 2 chunks +0 lines, -13 lines 0 comments Download
M third_party/WebKit/Source/web/BUILD.gn View 1 2 3 4 5 6 7 8 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/web/CompositorMutatorImpl.h View 1 2 3 4 5 6 7 8 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/Source/web/CompositorMutatorImpl.cpp View 1 2 3 4 5 6 7 2 chunks +2 lines, -0 lines 0 comments Download
A third_party/WebKit/Source/web/CompositorProxyClientImpl.h View 1 2 3 4 5 6 7 8 1 chunk +37 lines, -0 lines 0 comments Download
A third_party/WebKit/Source/web/CompositorProxyClientImpl.cpp View 1 chunk +28 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/web/CompositorWorkerProxyClientImpl.h View 1 2 3 4 5 6 7 4 chunks +8 lines, -5 lines 0 comments Download
M third_party/WebKit/Source/web/CompositorWorkerProxyClientImpl.cpp View 1 6 chunks +18 lines, -20 lines 0 comments Download

Messages

Total messages: 34 (17 generated)
keishi
PTAL. AnimationWorkletProxyClientImpl::m_proxies isn't being used yet but so I wasn't sure but I assumed that ...
3 years, 8 months ago (2017-03-28 19:35:13 UTC) #4
keishi
FYI CompositorProxy can be constructed in the main thread and compositor worker thread. However CompositorWorkerProxyClientImpl::m_proxies ...
3 years, 8 months ago (2017-03-29 05:29:16 UTC) #5
sof
https://codereview.chromium.org/2774223002/diff/100001/third_party/WebKit/Source/core/dom/AnimationWorkletProxyClient.h File third_party/WebKit/Source/core/dom/AnimationWorkletProxyClient.h (right): https://codereview.chromium.org/2774223002/diff/100001/third_party/WebKit/Source/core/dom/AnimationWorkletProxyClient.h#newcode14 third_party/WebKit/Source/core/dom/AnimationWorkletProxyClient.h:14: class CORE_EXPORT AnimationWorkletProxyClient What role does this abstraction play? ...
3 years, 8 months ago (2017-03-29 05:51:05 UTC) #9
haraken
Looks good % Sigbjorn's comment addressed.
3 years, 8 months ago (2017-03-29 07:45:07 UTC) #16
sof
#5 is a great help in gaining quicker understanding of thread ownership & usage (wrt ...
3 years, 8 months ago (2017-03-29 10:24:08 UTC) #17
keishi
Moved all information in comment #5 into code comments. https://codereview.chromium.org/2774223002/diff/100001/third_party/WebKit/Source/core/dom/AnimationWorkletProxyClient.h File third_party/WebKit/Source/core/dom/AnimationWorkletProxyClient.h (right): https://codereview.chromium.org/2774223002/diff/100001/third_party/WebKit/Source/core/dom/AnimationWorkletProxyClient.h#newcode14 third_party/WebKit/Source/core/dom/AnimationWorkletProxyClient.h:14: ...
3 years, 8 months ago (2017-03-30 08:34:14 UTC) #18
keishi
majidvp could you take a look? Thanks.
3 years, 8 months ago (2017-03-30 08:36:13 UTC) #19
sof
lgtm
3 years, 8 months ago (2017-03-30 13:57:38 UTC) #20
majidvp
On 2017/03/30 13:57:38, sof wrote: > lgtm I am OOO but flackr@ can review instead ...
3 years, 8 months ago (2017-03-30 16:20:37 UTC) #22
keishi
flackr, could you take a look? Thanks!
3 years, 8 months ago (2017-04-03 00:34:06 UTC) #23
flackr
LGTM with nits https://codereview.chromium.org/2774223002/diff/140001/third_party/WebKit/Source/web/CompositorMutatorImpl.h File third_party/WebKit/Source/web/CompositorMutatorImpl.h (right): https://codereview.chromium.org/2774223002/diff/140001/third_party/WebKit/Source/web/CompositorMutatorImpl.h#newcode26 third_party/WebKit/Source/web/CompositorMutatorImpl.h:26: // Owned by the main thread ...
3 years, 8 months ago (2017-04-04 02:17:08 UTC) #24
keishi
https://codereview.chromium.org/2774223002/diff/140001/third_party/WebKit/Source/web/CompositorMutatorImpl.h File third_party/WebKit/Source/web/CompositorMutatorImpl.h (right): https://codereview.chromium.org/2774223002/diff/140001/third_party/WebKit/Source/web/CompositorMutatorImpl.h#newcode26 third_party/WebKit/Source/web/CompositorMutatorImpl.h:26: // Owned by the main thread or control thread. ...
3 years, 8 months ago (2017-04-04 05:18:32 UTC) #25
keishi
On 2017/04/04 05:18:32, keishi wrote: > https://codereview.chromium.org/2774223002/diff/140001/third_party/WebKit/Source/web/CompositorMutatorImpl.h > File third_party/WebKit/Source/web/CompositorMutatorImpl.h (right): > > https://codereview.chromium.org/2774223002/diff/140001/third_party/WebKit/Source/web/CompositorMutatorImpl.h#newcode26 > ...
3 years, 8 months ago (2017-04-04 05:25:54 UTC) #26
keishi
Looks like threaded compositor is disabled by default for content_shell and tests that use it ...
3 years, 8 months ago (2017-04-04 05:50:22 UTC) #27
keishi
https://codereview.chromium.org/2774223002/diff/140001/third_party/WebKit/Source/web/CompositorMutatorImpl.h File third_party/WebKit/Source/web/CompositorMutatorImpl.h (right): https://codereview.chromium.org/2774223002/diff/140001/third_party/WebKit/Source/web/CompositorMutatorImpl.h#newcode26 third_party/WebKit/Source/web/CompositorMutatorImpl.h:26: // Owned by the main thread or control thread. ...
3 years, 8 months ago (2017-04-04 05:54:43 UTC) #28
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2774223002/160001
3 years, 8 months ago (2017-04-05 01:46:51 UTC) #31
commit-bot: I haz the power
3 years, 8 months ago (2017-04-05 03:44:04 UTC) #34
Message was sent while issue was closed.
Committed patchset #9 (id:160001) as
https://chromium.googlesource.com/chromium/src/+/0af77d69187ee8a529072cb3995b...

Powered by Google App Engine
This is Rietveld 408576698