New issue
Advanced search Search tips

Issue 705872 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: May 2018
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 1
Type: Bug

Blocking:
issue 705873



Sign in to add a comment

Oilpan: CompositorWorkerProxyClientImpl to CompositorProxy reference isn't using CrossThreadPersistent

Project Member Reported by keishi@chromium.org, Mar 28 2017

Issue description

CompositorWorkerProxyClientImpl is owned by the main thread.
CompositorProxy can be owned by both main and compositor worker threads, but the ones rferenced by CompositorWorkerProxyClientImpl are always owned by compositor worker thread.
 

Comment 1 by keishi@chromium.org, Mar 28 2017

Blocking: 705873

Comment 2 by horo@chromium.org, Mar 28 2017

Labels: Postmortem-Followup
Project Member

Comment 3 by bugdroid1@chromium.org, Apr 5 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/0af77d69187ee8a529072cb3995bd111aaed5864

commit 0af77d69187ee8a529072cb3995bd111aaed5864
Author: keishi <keishi@chromium.org>
Date: Wed Apr 05 03:42:42 2017

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}

[modify] https://crrev.com/0af77d69187ee8a529072cb3995bd111aaed5864/third_party/WebKit/Source/core/dom/AnimationWorkletProxyClient.h
[modify] https://crrev.com/0af77d69187ee8a529072cb3995bd111aaed5864/third_party/WebKit/Source/core/dom/CompositorProxy.cpp
[modify] https://crrev.com/0af77d69187ee8a529072cb3995bd111aaed5864/third_party/WebKit/Source/core/dom/CompositorProxy.h
[modify] https://crrev.com/0af77d69187ee8a529072cb3995bd111aaed5864/third_party/WebKit/Source/core/dom/CompositorProxyClient.h
[modify] https://crrev.com/0af77d69187ee8a529072cb3995bd111aaed5864/third_party/WebKit/Source/core/dom/CompositorWorkerProxyClient.h
[modify] https://crrev.com/0af77d69187ee8a529072cb3995bd111aaed5864/third_party/WebKit/Source/modules/compositorworker/CompositorWorkerMessagingProxy.cpp
[modify] https://crrev.com/0af77d69187ee8a529072cb3995bd111aaed5864/third_party/WebKit/Source/modules/compositorworker/CompositorWorkerThreadTest.cpp
[modify] https://crrev.com/0af77d69187ee8a529072cb3995bd111aaed5864/third_party/WebKit/Source/web/AnimationWorkletProxyClientImpl.cpp
[modify] https://crrev.com/0af77d69187ee8a529072cb3995bd111aaed5864/third_party/WebKit/Source/web/AnimationWorkletProxyClientImpl.h
[modify] https://crrev.com/0af77d69187ee8a529072cb3995bd111aaed5864/third_party/WebKit/Source/web/BUILD.gn
[modify] https://crrev.com/0af77d69187ee8a529072cb3995bd111aaed5864/third_party/WebKit/Source/web/CompositorMutatorImpl.cpp
[modify] https://crrev.com/0af77d69187ee8a529072cb3995bd111aaed5864/third_party/WebKit/Source/web/CompositorMutatorImpl.h
[add] https://crrev.com/0af77d69187ee8a529072cb3995bd111aaed5864/third_party/WebKit/Source/web/CompositorProxyClientImpl.cpp
[add] https://crrev.com/0af77d69187ee8a529072cb3995bd111aaed5864/third_party/WebKit/Source/web/CompositorProxyClientImpl.h
[modify] https://crrev.com/0af77d69187ee8a529072cb3995bd111aaed5864/third_party/WebKit/Source/web/CompositorWorkerProxyClientImpl.cpp
[modify] https://crrev.com/0af77d69187ee8a529072cb3995bd111aaed5864/third_party/WebKit/Source/web/CompositorWorkerProxyClientImpl.h

Status: Fixed (was: Started)

Sign in to add a comment