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

Issue 1177753003: Refactor RendererSchedulerImpl to improve thread safety. (Closed)

Created:
5 years, 6 months ago by alex clarke (OOO till 29th)
Modified:
5 years, 6 months ago
Reviewers:
Sami
CC:
chromium-reviews, scheduler-bugs_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Refactor RendererSchedulerImpl to improve thread safety. Puts most data members of RendererSchedulerImpl into one of three structs that make sure they are accessed from the right thread and where necessary within the appropriate mutex. BUG= Committed: https://crrev.com/c9847cc5f00170da80c7efe9736218b86eab19a7 Cr-Commit-Position: refs/heads/master@{#333945}

Patch Set 1 #

Total comments: 7

Patch Set 2 : Tweaks #

Patch Set 3 : Removed some #ifs #

Total comments: 4

Patch Set 4 : Fix pointer dereference. #

Total comments: 2

Patch Set 5 : Moved compositor_thread_checker_ into CompositorThreadOnly #

Unified diffs Side-by-side diffs Delta from patch set Stats (+222 lines, -151 lines) Patch
M components/scheduler/renderer/renderer_scheduler_impl.h View 1 2 3 4 4 chunks +74 lines, -29 lines 0 comments Download
M components/scheduler/renderer/renderer_scheduler_impl.cc View 1 2 3 4 23 chunks +99 lines, -84 lines 0 comments Download
M components/scheduler/renderer/renderer_scheduler_impl_unittest.cc View 1 6 chunks +49 lines, -38 lines 0 comments Download

Messages

Total messages: 16 (4 generated)
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1177753003/1
5 years, 6 months ago (2015-06-10 16:56:14 UTC) #2
alex clarke (OOO till 29th)
Here's the refactor as requested.
5 years, 6 months ago (2015-06-10 16:56:26 UTC) #4
Sami
https://codereview.chromium.org/1177753003/diff/1/components/scheduler/renderer/renderer_scheduler_impl.h File components/scheduler/renderer/renderer_scheduler_impl.h (right): https://codereview.chromium.org/1177753003/diff/1/components/scheduler/renderer/renderer_scheduler_impl.h#newcode199 components/scheduler/renderer/renderer_scheduler_impl.h:199: // Don't access current_policy_ directly, instead use SchedulerPolicy(). Can ...
5 years, 6 months ago (2015-06-10 17:03:42 UTC) #5
alex clarke (OOO till 29th)
PTAL https://codereview.chromium.org/1177753003/diff/1/components/scheduler/renderer/renderer_scheduler_impl.h File components/scheduler/renderer/renderer_scheduler_impl.h (right): https://codereview.chromium.org/1177753003/diff/1/components/scheduler/renderer/renderer_scheduler_impl.h#newcode199 components/scheduler/renderer/renderer_scheduler_impl.h:199: // Don't access current_policy_ directly, instead use SchedulerPolicy(). ...
5 years, 6 months ago (2015-06-10 17:21:15 UTC) #6
alex clarke (OOO till 29th)
PTAL https://codereview.chromium.org/1177753003/diff/1/components/scheduler/renderer/renderer_scheduler_impl.h File components/scheduler/renderer/renderer_scheduler_impl.h (right): https://codereview.chromium.org/1177753003/diff/1/components/scheduler/renderer/renderer_scheduler_impl.h#newcode227 components/scheduler/renderer/renderer_scheduler_impl.h:227: #if DCHECK_IS_ON() On 2015/06/10 17:21:15, alexclarke1 wrote: > ...
5 years, 6 months ago (2015-06-10 17:25:42 UTC) #7
Sami
https://codereview.chromium.org/1177753003/diff/40001/components/scheduler/renderer/renderer_scheduler_impl.cc File components/scheduler/renderer/renderer_scheduler_impl.cc (right): https://codereview.chromium.org/1177753003/diff/40001/components/scheduler/renderer/renderer_scheduler_impl.cc#newcode609 components/scheduler/renderer/renderer_scheduler_impl.cc:609: MainThreadOnly().begin_main_frame_on_critical_path_); Do any of these DCHECKs fire when you ...
5 years, 6 months ago (2015-06-10 18:16:13 UTC) #8
alex clarke (OOO till 29th)
PTAL https://codereview.chromium.org/1177753003/diff/40001/components/scheduler/renderer/renderer_scheduler_impl.cc File components/scheduler/renderer/renderer_scheduler_impl.cc (right): https://codereview.chromium.org/1177753003/diff/40001/components/scheduler/renderer/renderer_scheduler_impl.cc#newcode609 components/scheduler/renderer/renderer_scheduler_impl.cc:609: MainThreadOnly().begin_main_frame_on_critical_path_); On 2015/06/10 18:16:13, Sami wrote: > Do ...
5 years, 6 months ago (2015-06-11 11:07:21 UTC) #9
Sami
Thanks, lgtm with an optional suggestion. https://codereview.chromium.org/1177753003/diff/60001/components/scheduler/renderer/renderer_scheduler_impl.h File components/scheduler/renderer/renderer_scheduler_impl.h (right): https://codereview.chromium.org/1177753003/diff/60001/components/scheduler/renderer/renderer_scheduler_impl.h#newcode256 components/scheduler/renderer/renderer_scheduler_impl.h:256: scoped_ptr<base::ThreadChecker> compositor_thread_checker_; nit: ...
5 years, 6 months ago (2015-06-11 13:23:36 UTC) #10
alex clarke (OOO till 29th)
https://codereview.chromium.org/1177753003/diff/60001/components/scheduler/renderer/renderer_scheduler_impl.h File components/scheduler/renderer/renderer_scheduler_impl.h (right): https://codereview.chromium.org/1177753003/diff/60001/components/scheduler/renderer/renderer_scheduler_impl.h#newcode256 components/scheduler/renderer/renderer_scheduler_impl.h:256: scoped_ptr<base::ThreadChecker> compositor_thread_checker_; On 2015/06/11 13:23:36, Sami wrote: > nit: ...
5 years, 6 months ago (2015-06-11 13:31:23 UTC) #11
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1177753003/80001
5 years, 6 months ago (2015-06-11 13:31:48 UTC) #14
commit-bot: I haz the power
Committed patchset #5 (id:80001)
5 years, 6 months ago (2015-06-11 14:28:06 UTC) #15
commit-bot: I haz the power
5 years, 6 months ago (2015-06-11 14:29:07 UTC) #16
Message was sent while issue was closed.
Patchset 5 (id:??) landed as
https://crrev.com/c9847cc5f00170da80c7efe9736218b86eab19a7
Cr-Commit-Position: refs/heads/master@{#333945}

Powered by Google App Engine
This is Rietveld 408576698