|
|
Chromium Code Reviews|
Created:
4 years ago by Ken Rockot(use gerrit already) Modified:
4 years ago Reviewers:
jam CC:
chromium-reviews, darin-cc_chromium.org, jam, mlamouri+watch-content_chromium.org Target Ref:
refs/pending/heads/master Project:
chromium Visibility:
Public. |
DescriptionFix data race in RenderThreadImplBrowserTest
Use ThreadTaskRunnerHandle instead of BrowserThread::GetTaskRunnerForThread.
This avoids a data race in shutdown due to the fact that RendererScheduler
(used on a BrowserThread in this test) tramples the MessageLoop's TaskRunner
in a manner BrowserThreadImpl's TaskRunner facade does not anticipate.
Also opportunistically corrects some non-const ref arguments in
RenderThreadImpl.
BUG=672812
Committed: https://crrev.com/97a8683a8e2243efcdf13273a4037d5905ab75dd
Cr-Commit-Position: refs/heads/master@{#437755}
Patch Set 1 #Patch Set 2 : . #Patch Set 3 : . #
Messages
Total messages: 26 (20 generated)
The CQ bit was checked by rockot@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Description was changed from ========== Fix data race in RenderThreadImplBrowserTest Uses a ThreadTaskRunnerHandle instead of the BrowserThread's TaskRunner implementation. BUG=672812 ========== to ========== Fix data race in RenderThreadImplBrowserTest Uses the ThreadTaskRunnerHandle instead of the BrowserThread's TaskRunner. This avoids a data race in shutdown due to the fact that RendererScheduler (used on a BrowserThread in this test) tramples the MessageLoop's TaskRunner in a manner BrowserThreadImpl does not anticipate. BUG=672812 ==========
rockot@chromium.org changed reviewers: + jam@chromium.org
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: linux_android_rel_ng on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/linux_androi...) win_chromium_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_...)
The CQ bit was checked by rockot@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Description was changed from ========== Fix data race in RenderThreadImplBrowserTest Uses the ThreadTaskRunnerHandle instead of the BrowserThread's TaskRunner. This avoids a data race in shutdown due to the fact that RendererScheduler (used on a BrowserThread in this test) tramples the MessageLoop's TaskRunner in a manner BrowserThreadImpl does not anticipate. BUG=672812 ========== to ========== Fix data race in RenderThreadImplBrowserTest This avoids a data race in shutdown due to the fact that RendererScheduler (used on a BrowserThread in this test) tramples the MessageLoop's TaskRunner in a manner BrowserThreadImpl does not anticipate. Because it was already incorrect to be using ChannelProxy on the same thread as its Channel, this changes the TestBrowserThreadBundle to use REAL_IO_THREAD instead of IO_MAINLOOP. As one further consequence of running a real IO thread, it also then becomes possible to initialize the ServiceManagerContext before the SequenceWorkerPool is initialized, due to yet another subtlety of this particular test fixture. So this shuffles some stuff around to avoid that. Finally, fixes some non-const ref parameter usage in RenderThreadImpl. BUG=672812 ==========
I have half a mind to just delete these tests. At this point the test fixture setup code is probably more complex and fragile than the behavior it's being used to test.
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: linux_android_rel_ng on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/linux_androi...)
lgtm
The CQ bit was checked by rockot@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Description was changed from ========== Fix data race in RenderThreadImplBrowserTest This avoids a data race in shutdown due to the fact that RendererScheduler (used on a BrowserThread in this test) tramples the MessageLoop's TaskRunner in a manner BrowserThreadImpl does not anticipate. Because it was already incorrect to be using ChannelProxy on the same thread as its Channel, this changes the TestBrowserThreadBundle to use REAL_IO_THREAD instead of IO_MAINLOOP. As one further consequence of running a real IO thread, it also then becomes possible to initialize the ServiceManagerContext before the SequenceWorkerPool is initialized, due to yet another subtlety of this particular test fixture. So this shuffles some stuff around to avoid that. Finally, fixes some non-const ref parameter usage in RenderThreadImpl. BUG=672812 ========== to ========== Fix data race in RenderThreadImplBrowserTest Use ThreadTaskRunnerHandle instead of BrowserThread::GetTaskRunnerForThread. This avoids a data race in shutdown due to the fact that RendererScheduler (used on a BrowserThread in this test) tramples the MessageLoop's TaskRunner in a manner BrowserThreadImpl's TaskRunner facade does not anticipate. Also opportunistically corrects some non-const ref arguments in RenderThreadImpl. BUG=672812 ==========
The CQ bit was unchecked by rockot@chromium.org
The CQ bit was checked by rockot@chromium.org
The patchset sent to the CQ was uploaded after l-g-t-m from jam@chromium.org Link to the patchset: https://codereview.chromium.org/2568543002/#ps40001 (title: ".")
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
CQ is committing da patch.
Bot data: {"patchset_id": 40001, "attempt_start_ts": 1481342541440180,
"parent_rev": "767996a21a472ca1a74c89a63084e4c584343481", "commit_rev":
"e3916da3937d887e5d0b2ea9f12401a39415196f"}
Message was sent while issue was closed.
Description was changed from ========== Fix data race in RenderThreadImplBrowserTest Use ThreadTaskRunnerHandle instead of BrowserThread::GetTaskRunnerForThread. This avoids a data race in shutdown due to the fact that RendererScheduler (used on a BrowserThread in this test) tramples the MessageLoop's TaskRunner in a manner BrowserThreadImpl's TaskRunner facade does not anticipate. Also opportunistically corrects some non-const ref arguments in RenderThreadImpl. BUG=672812 ========== to ========== Fix data race in RenderThreadImplBrowserTest Use ThreadTaskRunnerHandle instead of BrowserThread::GetTaskRunnerForThread. This avoids a data race in shutdown due to the fact that RendererScheduler (used on a BrowserThread in this test) tramples the MessageLoop's TaskRunner in a manner BrowserThreadImpl's TaskRunner facade does not anticipate. Also opportunistically corrects some non-const ref arguments in RenderThreadImpl. BUG=672812 Review-Url: https://codereview.chromium.org/2568543002 ==========
Message was sent while issue was closed.
Committed patchset #3 (id:40001)
Message was sent while issue was closed.
Description was changed from ========== Fix data race in RenderThreadImplBrowserTest Use ThreadTaskRunnerHandle instead of BrowserThread::GetTaskRunnerForThread. This avoids a data race in shutdown due to the fact that RendererScheduler (used on a BrowserThread in this test) tramples the MessageLoop's TaskRunner in a manner BrowserThreadImpl's TaskRunner facade does not anticipate. Also opportunistically corrects some non-const ref arguments in RenderThreadImpl. BUG=672812 Review-Url: https://codereview.chromium.org/2568543002 ========== to ========== Fix data race in RenderThreadImplBrowserTest Use ThreadTaskRunnerHandle instead of BrowserThread::GetTaskRunnerForThread. This avoids a data race in shutdown due to the fact that RendererScheduler (used on a BrowserThread in this test) tramples the MessageLoop's TaskRunner in a manner BrowserThreadImpl's TaskRunner facade does not anticipate. Also opportunistically corrects some non-const ref arguments in RenderThreadImpl. BUG=672812 Committed: https://crrev.com/97a8683a8e2243efcdf13273a4037d5905ab75dd Cr-Commit-Position: refs/heads/master@{#437755} ==========
Message was sent while issue was closed.
Patchset 3 (id:??) landed as https://crrev.com/97a8683a8e2243efcdf13273a4037d5905ab75dd Cr-Commit-Position: refs/heads/master@{#437755} |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
