New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 671669 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner: ----
Closed: Feb 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Feature



Sign in to add a comment

We should not schedule wakeups for disabled task queues

Project Member Reported by alexclarke@chromium.org, Dec 6 2016

Issue description

Currently we request wakeups even for disabled task queues.  This results in pointless DoWorks getting scheduled.

We should either come up with a fast way of finding the next non-disabled wake up in TimeDomain::delayed_wakeup_queue_ or we should get the TaskQueueImpl to insert/remove wakeups based on the status of the task queue.
 
Labels: -Type-Bug Type-Feature
Project Member

Comment 2 by bugdroid1@chromium.org, Dec 16 2016

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

commit cab9842ac55e5b9dab766f11c6e412949d854483
Author: alexclarke <alexclarke@chromium.org>
Date: Fri Dec 16 00:06:24 2016

Dont post delayed DoWork for disabled queues. We could do this for fences too but don't
because that would break the throttling logic which needs to know when the next delayed
task is due to be run.

BUG= 671669 

Review-Url: https://codereview.chromium.org/2572893002
Cr-Commit-Position: refs/heads/master@{#438962}

[modify] https://crrev.com/cab9842ac55e5b9dab766f11c6e412949d854483/third_party/WebKit/Source/platform/scheduler/base/real_time_domain.cc
[modify] https://crrev.com/cab9842ac55e5b9dab766f11c6e412949d854483/third_party/WebKit/Source/platform/scheduler/base/real_time_domain.h
[modify] https://crrev.com/cab9842ac55e5b9dab766f11c6e412949d854483/third_party/WebKit/Source/platform/scheduler/base/task_queue_impl.cc
[modify] https://crrev.com/cab9842ac55e5b9dab766f11c6e412949d854483/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager.cc
[modify] https://crrev.com/cab9842ac55e5b9dab766f11c6e412949d854483/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager.h
[modify] https://crrev.com/cab9842ac55e5b9dab766f11c6e412949d854483/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager_perftest.cc
[modify] https://crrev.com/cab9842ac55e5b9dab766f11c6e412949d854483/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager_unittest.cc
[modify] https://crrev.com/cab9842ac55e5b9dab766f11c6e412949d854483/third_party/WebKit/Source/platform/scheduler/base/time_domain.cc
[modify] https://crrev.com/cab9842ac55e5b9dab766f11c6e412949d854483/third_party/WebKit/Source/platform/scheduler/base/time_domain.h
[modify] https://crrev.com/cab9842ac55e5b9dab766f11c6e412949d854483/third_party/WebKit/Source/platform/scheduler/base/time_domain_unittest.cc
[modify] https://crrev.com/cab9842ac55e5b9dab766f11c6e412949d854483/third_party/WebKit/Source/platform/scheduler/base/virtual_time_domain.cc
[modify] https://crrev.com/cab9842ac55e5b9dab766f11c6e412949d854483/third_party/WebKit/Source/platform/scheduler/base/virtual_time_domain.h
[modify] https://crrev.com/cab9842ac55e5b9dab766f11c6e412949d854483/third_party/WebKit/Source/platform/scheduler/renderer/auto_advancing_virtual_time_domain.cc
[modify] https://crrev.com/cab9842ac55e5b9dab766f11c6e412949d854483/third_party/WebKit/Source/platform/scheduler/renderer/auto_advancing_virtual_time_domain.h
[modify] https://crrev.com/cab9842ac55e5b9dab766f11c6e412949d854483/third_party/WebKit/Source/platform/scheduler/renderer/throttled_time_domain.cc
[modify] https://crrev.com/cab9842ac55e5b9dab766f11c6e412949d854483/third_party/WebKit/Source/platform/scheduler/renderer/throttled_time_domain.h
[modify] https://crrev.com/cab9842ac55e5b9dab766f11c6e412949d854483/third_party/WebKit/Source/platform/testing/TestingPlatformSupport.cpp

Status: Fixed (was: Available)
Project Member

Comment 4 by bugdroid1@chromium.org, Dec 19 2016

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

commit a4d8806c8b5ecf364370325e597aa4f85d30c01f
Author: gab <gab@chromium.org>
Date: Mon Dec 19 23:49:30 2016

Revert of Dont post delayed DoWork for disabled queues. (patchset #5 id:80001 of https://codereview.chromium.org/2572893002/ )

Reason for revert:
Need to revert this to be able to revert https://codereview.chromium.org/2546423002 which is the #1 culprit for http://crbug.com/674895.

Original issue's description:
> Dont post delayed DoWork for disabled queues. We could do this for fences too but don't
> because that would break the throttling logic which needs to know when the next delayed
> task is due to be run.
>
> BUG= 671669 
>
> Committed: https://crrev.com/cab9842ac55e5b9dab766f11c6e412949d854483
> Cr-Commit-Position: refs/heads/master@{#438962}

TBR=skyostil@chromium.org,haraken@chromium.org,alexclarke@chromium.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG= 671669 , 674895

Review-Url: https://codereview.chromium.org/2583333002
Cr-Commit-Position: refs/heads/master@{#439621}

[modify] https://crrev.com/a4d8806c8b5ecf364370325e597aa4f85d30c01f/third_party/WebKit/Source/platform/scheduler/base/real_time_domain.cc
[modify] https://crrev.com/a4d8806c8b5ecf364370325e597aa4f85d30c01f/third_party/WebKit/Source/platform/scheduler/base/real_time_domain.h
[modify] https://crrev.com/a4d8806c8b5ecf364370325e597aa4f85d30c01f/third_party/WebKit/Source/platform/scheduler/base/task_queue_impl.cc
[modify] https://crrev.com/a4d8806c8b5ecf364370325e597aa4f85d30c01f/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager.cc
[modify] https://crrev.com/a4d8806c8b5ecf364370325e597aa4f85d30c01f/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager.h
[modify] https://crrev.com/a4d8806c8b5ecf364370325e597aa4f85d30c01f/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager_perftest.cc
[modify] https://crrev.com/a4d8806c8b5ecf364370325e597aa4f85d30c01f/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager_unittest.cc
[modify] https://crrev.com/a4d8806c8b5ecf364370325e597aa4f85d30c01f/third_party/WebKit/Source/platform/scheduler/base/time_domain.cc
[modify] https://crrev.com/a4d8806c8b5ecf364370325e597aa4f85d30c01f/third_party/WebKit/Source/platform/scheduler/base/time_domain.h
[modify] https://crrev.com/a4d8806c8b5ecf364370325e597aa4f85d30c01f/third_party/WebKit/Source/platform/scheduler/base/time_domain_unittest.cc
[modify] https://crrev.com/a4d8806c8b5ecf364370325e597aa4f85d30c01f/third_party/WebKit/Source/platform/scheduler/base/virtual_time_domain.cc
[modify] https://crrev.com/a4d8806c8b5ecf364370325e597aa4f85d30c01f/third_party/WebKit/Source/platform/scheduler/base/virtual_time_domain.h
[modify] https://crrev.com/a4d8806c8b5ecf364370325e597aa4f85d30c01f/third_party/WebKit/Source/platform/scheduler/renderer/auto_advancing_virtual_time_domain.cc
[modify] https://crrev.com/a4d8806c8b5ecf364370325e597aa4f85d30c01f/third_party/WebKit/Source/platform/scheduler/renderer/auto_advancing_virtual_time_domain.h
[modify] https://crrev.com/a4d8806c8b5ecf364370325e597aa4f85d30c01f/third_party/WebKit/Source/platform/scheduler/renderer/throttled_time_domain.cc
[modify] https://crrev.com/a4d8806c8b5ecf364370325e597aa4f85d30c01f/third_party/WebKit/Source/platform/scheduler/renderer/throttled_time_domain.h
[modify] https://crrev.com/a4d8806c8b5ecf364370325e597aa4f85d30c01f/third_party/WebKit/Source/platform/testing/TestingPlatformSupport.cpp

Project Member

Comment 5 by bugdroid1@chromium.org, Feb 1 2017

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

commit 9a8a61516e750796f74869167bb919a05551d4dd
Author: alexclarke <alexclarke@chromium.org>
Date: Wed Feb 01 20:15:04 2017

Dont post delayed DoWork for disabled queues. We could do this for fences too but don't
because that would break the throttling logic which needs to know when the next delayed
task is due to be run.

BUG= 671669 

Committed: https://crrev.com/cab9842ac55e5b9dab766f11c6e412949d854483
Cr-Original-Commit-Position: refs/heads/master@{#438962}
Review-Url: https://codereview.chromium.org/2572893002
Cr-Commit-Position: refs/heads/master@{#447591}

[modify] https://crrev.com/9a8a61516e750796f74869167bb919a05551d4dd/third_party/WebKit/Source/platform/scheduler/base/real_time_domain.cc
[modify] https://crrev.com/9a8a61516e750796f74869167bb919a05551d4dd/third_party/WebKit/Source/platform/scheduler/base/real_time_domain.h
[modify] https://crrev.com/9a8a61516e750796f74869167bb919a05551d4dd/third_party/WebKit/Source/platform/scheduler/base/task_queue_impl.cc
[modify] https://crrev.com/9a8a61516e750796f74869167bb919a05551d4dd/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager.cc
[modify] https://crrev.com/9a8a61516e750796f74869167bb919a05551d4dd/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager.h
[modify] https://crrev.com/9a8a61516e750796f74869167bb919a05551d4dd/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager_perftest.cc
[modify] https://crrev.com/9a8a61516e750796f74869167bb919a05551d4dd/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager_unittest.cc
[modify] https://crrev.com/9a8a61516e750796f74869167bb919a05551d4dd/third_party/WebKit/Source/platform/scheduler/base/time_domain.cc
[modify] https://crrev.com/9a8a61516e750796f74869167bb919a05551d4dd/third_party/WebKit/Source/platform/scheduler/base/time_domain.h
[modify] https://crrev.com/9a8a61516e750796f74869167bb919a05551d4dd/third_party/WebKit/Source/platform/scheduler/base/time_domain_unittest.cc
[modify] https://crrev.com/9a8a61516e750796f74869167bb919a05551d4dd/third_party/WebKit/Source/platform/scheduler/base/virtual_time_domain.cc
[modify] https://crrev.com/9a8a61516e750796f74869167bb919a05551d4dd/third_party/WebKit/Source/platform/scheduler/base/virtual_time_domain.h
[modify] https://crrev.com/9a8a61516e750796f74869167bb919a05551d4dd/third_party/WebKit/Source/platform/scheduler/renderer/auto_advancing_virtual_time_domain.cc
[modify] https://crrev.com/9a8a61516e750796f74869167bb919a05551d4dd/third_party/WebKit/Source/platform/scheduler/renderer/auto_advancing_virtual_time_domain.h
[modify] https://crrev.com/9a8a61516e750796f74869167bb919a05551d4dd/third_party/WebKit/Source/platform/scheduler/renderer/throttled_time_domain.cc
[modify] https://crrev.com/9a8a61516e750796f74869167bb919a05551d4dd/third_party/WebKit/Source/platform/scheduler/renderer/throttled_time_domain.h
[modify] https://crrev.com/9a8a61516e750796f74869167bb919a05551d4dd/third_party/WebKit/Source/platform/testing/TestingPlatformSupport.cpp

Project Member

Comment 6 by bugdroid1@chromium.org, Feb 3 2017

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

commit 205b4a6222828e70127989c9451bbbd5e56be02d
Author: alexclarke <alexclarke@chromium.org>
Date: Fri Feb 03 19:30:16 2017

Revert of Dont post delayed DoWork for disabled queues. (patchset #9 id:160001 of https://codereview.chromium.org/2572893002/ )

Reason for revert:
Speculative revert.  Might be causing renderer hangs.

Original issue's description:
> Dont post delayed DoWork for disabled queues. We could do this for fences too but don't
> because that would break the throttling logic which needs to know when the next delayed
> task is due to be run.
>
> BUG= 671669 
>
> Committed: https://crrev.com/cab9842ac55e5b9dab766f11c6e412949d854483
> Cr-Original-Commit-Position: refs/heads/master@{#438962}
> Review-Url: https://codereview.chromium.org/2572893002
> Cr-Commit-Position: refs/heads/master@{#447591}
> Committed: https://chromium.googlesource.com/chromium/src/+/9a8a61516e750796f74869167bb919a05551d4dd

TBR=skyostil@chromium.org,haraken@chromium.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG= 671669 ,  688426 ,  688422 

Review-Url: https://codereview.chromium.org/2674903003
Cr-Commit-Position: refs/heads/master@{#448046}

[modify] https://crrev.com/205b4a6222828e70127989c9451bbbd5e56be02d/third_party/WebKit/Source/platform/scheduler/base/real_time_domain.cc
[modify] https://crrev.com/205b4a6222828e70127989c9451bbbd5e56be02d/third_party/WebKit/Source/platform/scheduler/base/real_time_domain.h
[modify] https://crrev.com/205b4a6222828e70127989c9451bbbd5e56be02d/third_party/WebKit/Source/platform/scheduler/base/task_queue_impl.cc
[modify] https://crrev.com/205b4a6222828e70127989c9451bbbd5e56be02d/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager.cc
[modify] https://crrev.com/205b4a6222828e70127989c9451bbbd5e56be02d/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager.h
[modify] https://crrev.com/205b4a6222828e70127989c9451bbbd5e56be02d/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager_perftest.cc
[modify] https://crrev.com/205b4a6222828e70127989c9451bbbd5e56be02d/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager_unittest.cc
[modify] https://crrev.com/205b4a6222828e70127989c9451bbbd5e56be02d/third_party/WebKit/Source/platform/scheduler/base/time_domain.cc
[modify] https://crrev.com/205b4a6222828e70127989c9451bbbd5e56be02d/third_party/WebKit/Source/platform/scheduler/base/time_domain.h
[modify] https://crrev.com/205b4a6222828e70127989c9451bbbd5e56be02d/third_party/WebKit/Source/platform/scheduler/base/time_domain_unittest.cc
[modify] https://crrev.com/205b4a6222828e70127989c9451bbbd5e56be02d/third_party/WebKit/Source/platform/scheduler/base/virtual_time_domain.cc
[modify] https://crrev.com/205b4a6222828e70127989c9451bbbd5e56be02d/third_party/WebKit/Source/platform/scheduler/base/virtual_time_domain.h
[modify] https://crrev.com/205b4a6222828e70127989c9451bbbd5e56be02d/third_party/WebKit/Source/platform/scheduler/renderer/auto_advancing_virtual_time_domain.cc
[modify] https://crrev.com/205b4a6222828e70127989c9451bbbd5e56be02d/third_party/WebKit/Source/platform/scheduler/renderer/auto_advancing_virtual_time_domain.h
[modify] https://crrev.com/205b4a6222828e70127989c9451bbbd5e56be02d/third_party/WebKit/Source/platform/scheduler/renderer/throttled_time_domain.cc
[modify] https://crrev.com/205b4a6222828e70127989c9451bbbd5e56be02d/third_party/WebKit/Source/platform/scheduler/renderer/throttled_time_domain.h
[modify] https://crrev.com/205b4a6222828e70127989c9451bbbd5e56be02d/third_party/WebKit/Source/platform/testing/TestingPlatformSupport.cpp

Status: Started (was: Fixed)
Project Member

Comment 8 by bugdroid1@chromium.org, Feb 15 2017

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

commit c4b071b9088980c941d3dea85478b10675a479e6
Author: alexclarke <alexclarke@chromium.org>
Date: Wed Feb 15 13:13:51 2017

Dont post delayed DoWork for disabled queues. We could do this for
fences too but don't because that would break the throttling logic
which needs to know when the next delayed task is due to be run.

Contains a fix for the bug which previously was causing renderer hangs.

TaskQueue::GetNextScheduledWakeUp must return base::nullopt for
disabled queues because we no longer schedule wakeups for those. If we
don't do this then the TaskQueueThrottler will be fed misleading data
which causes it to misbehave.

BUG= 671669 ,  688422 

Committed: https://crrev.com/cab9842ac55e5b9dab766f11c6e412949d854483
Cr-Original-Original-Commit-Position: refs/heads/master@{#438962}
Review-Url: https://codereview.chromium.org/2572893002
Cr-Original-Commit-Position: refs/heads/master@{#447591}
Committed: https://chromium.googlesource.com/chromium/src/+/9a8a61516e750796f74869167bb919a05551d4dd
Review-Url: https://codereview.chromium.org/2572893002
Cr-Commit-Position: refs/heads/master@{#450679}

[modify] https://crrev.com/c4b071b9088980c941d3dea85478b10675a479e6/third_party/WebKit/Source/platform/scheduler/base/real_time_domain.cc
[modify] https://crrev.com/c4b071b9088980c941d3dea85478b10675a479e6/third_party/WebKit/Source/platform/scheduler/base/real_time_domain.h
[modify] https://crrev.com/c4b071b9088980c941d3dea85478b10675a479e6/third_party/WebKit/Source/platform/scheduler/base/task_queue_impl.cc
[modify] https://crrev.com/c4b071b9088980c941d3dea85478b10675a479e6/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager.cc
[modify] https://crrev.com/c4b071b9088980c941d3dea85478b10675a479e6/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager.h
[modify] https://crrev.com/c4b071b9088980c941d3dea85478b10675a479e6/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager_perftest.cc
[modify] https://crrev.com/c4b071b9088980c941d3dea85478b10675a479e6/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager_unittest.cc
[modify] https://crrev.com/c4b071b9088980c941d3dea85478b10675a479e6/third_party/WebKit/Source/platform/scheduler/base/task_queue_selector_unittest.cc
[modify] https://crrev.com/c4b071b9088980c941d3dea85478b10675a479e6/third_party/WebKit/Source/platform/scheduler/base/time_domain.cc
[modify] https://crrev.com/c4b071b9088980c941d3dea85478b10675a479e6/third_party/WebKit/Source/platform/scheduler/base/time_domain.h
[modify] https://crrev.com/c4b071b9088980c941d3dea85478b10675a479e6/third_party/WebKit/Source/platform/scheduler/base/time_domain_unittest.cc
[modify] https://crrev.com/c4b071b9088980c941d3dea85478b10675a479e6/third_party/WebKit/Source/platform/scheduler/base/virtual_time_domain.cc
[modify] https://crrev.com/c4b071b9088980c941d3dea85478b10675a479e6/third_party/WebKit/Source/platform/scheduler/base/virtual_time_domain.h
[modify] https://crrev.com/c4b071b9088980c941d3dea85478b10675a479e6/third_party/WebKit/Source/platform/scheduler/renderer/auto_advancing_virtual_time_domain.cc
[modify] https://crrev.com/c4b071b9088980c941d3dea85478b10675a479e6/third_party/WebKit/Source/platform/scheduler/renderer/auto_advancing_virtual_time_domain.h
[modify] https://crrev.com/c4b071b9088980c941d3dea85478b10675a479e6/third_party/WebKit/Source/platform/scheduler/renderer/task_queue_throttler_unittest.cc
[modify] https://crrev.com/c4b071b9088980c941d3dea85478b10675a479e6/third_party/WebKit/Source/platform/scheduler/renderer/throttled_time_domain.cc
[modify] https://crrev.com/c4b071b9088980c941d3dea85478b10675a479e6/third_party/WebKit/Source/platform/scheduler/renderer/throttled_time_domain.h
[modify] https://crrev.com/c4b071b9088980c941d3dea85478b10675a479e6/third_party/WebKit/public/platform/scheduler/base/task_queue.h

Status: Fixed (was: Started)
Project Member

Comment 10 by bugdroid1@chromium.org, Feb 18 2017

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

commit 469e3d5d1a527c19a07df597399abbe44b85aa0f
Author: alexclarke <alexclarke@chromium.org>
Date: Sat Feb 18 09:44:03 2017

Revert of [Reland] Dont post delayed DoWork for disabled queues. (patchset #14 id:260001 of https://codereview.chromium.org/2572893002/ )

Reason for revert:
Looks like there's still a bad interaction with the TaskQueueThrottler.

https://bugs.chromium.org/p/chromium/issues/detail?id=693672

Original issue's description:
> Dont post delayed DoWork for disabled queues. We could do this for
> fences too but don't because that would break the throttling logic
> which needs to know when the next delayed task is due to be run.
>
> Contains a fix for the bug which previously was causing renderer hangs.
>
> TaskQueue::GetNextScheduledWakeUp must return base::nullopt for
> disabled queues because we no longer schedule wakeups for those. If we
> don't do this then the TaskQueueThrottler will be fed misleading data
> which causes it to misbehave.
>
> BUG= 671669 ,  688422 , 693672
>
> Committed: https://crrev.com/cab9842ac55e5b9dab766f11c6e412949d854483
> Cr-Original-Original-Commit-Position: refs/heads/master@{#438962}
> Review-Url: https://codereview.chromium.org/2572893002
> Cr-Original-Commit-Position: refs/heads/master@{#447591}
> Committed: https://chromium.googlesource.com/chromium/src/+/9a8a61516e750796f74869167bb919a05551d4dd
> Review-Url: https://codereview.chromium.org/2572893002
> Cr-Commit-Position: refs/heads/master@{#450679}
> Committed: https://chromium.googlesource.com/chromium/src/+/c4b071b9088980c941d3dea85478b10675a479e6

TBR=skyostil@chromium.org,haraken@chromium.org,altimin@chromium.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG= 671669 ,  688422 , 693672

Review-Url: https://codereview.chromium.org/2705703002
Cr-Commit-Position: refs/heads/master@{#451449}

[modify] https://crrev.com/469e3d5d1a527c19a07df597399abbe44b85aa0f/third_party/WebKit/Source/platform/scheduler/base/real_time_domain.cc
[modify] https://crrev.com/469e3d5d1a527c19a07df597399abbe44b85aa0f/third_party/WebKit/Source/platform/scheduler/base/real_time_domain.h
[modify] https://crrev.com/469e3d5d1a527c19a07df597399abbe44b85aa0f/third_party/WebKit/Source/platform/scheduler/base/task_queue_impl.cc
[modify] https://crrev.com/469e3d5d1a527c19a07df597399abbe44b85aa0f/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager.cc
[modify] https://crrev.com/469e3d5d1a527c19a07df597399abbe44b85aa0f/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager.h
[modify] https://crrev.com/469e3d5d1a527c19a07df597399abbe44b85aa0f/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager_perftest.cc
[modify] https://crrev.com/469e3d5d1a527c19a07df597399abbe44b85aa0f/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager_unittest.cc
[modify] https://crrev.com/469e3d5d1a527c19a07df597399abbe44b85aa0f/third_party/WebKit/Source/platform/scheduler/base/task_queue_selector_unittest.cc
[modify] https://crrev.com/469e3d5d1a527c19a07df597399abbe44b85aa0f/third_party/WebKit/Source/platform/scheduler/base/time_domain.cc
[modify] https://crrev.com/469e3d5d1a527c19a07df597399abbe44b85aa0f/third_party/WebKit/Source/platform/scheduler/base/time_domain.h
[modify] https://crrev.com/469e3d5d1a527c19a07df597399abbe44b85aa0f/third_party/WebKit/Source/platform/scheduler/base/time_domain_unittest.cc
[modify] https://crrev.com/469e3d5d1a527c19a07df597399abbe44b85aa0f/third_party/WebKit/Source/platform/scheduler/base/virtual_time_domain.cc
[modify] https://crrev.com/469e3d5d1a527c19a07df597399abbe44b85aa0f/third_party/WebKit/Source/platform/scheduler/base/virtual_time_domain.h
[modify] https://crrev.com/469e3d5d1a527c19a07df597399abbe44b85aa0f/third_party/WebKit/Source/platform/scheduler/renderer/auto_advancing_virtual_time_domain.cc
[modify] https://crrev.com/469e3d5d1a527c19a07df597399abbe44b85aa0f/third_party/WebKit/Source/platform/scheduler/renderer/auto_advancing_virtual_time_domain.h
[modify] https://crrev.com/469e3d5d1a527c19a07df597399abbe44b85aa0f/third_party/WebKit/Source/platform/scheduler/renderer/task_queue_throttler_unittest.cc
[modify] https://crrev.com/469e3d5d1a527c19a07df597399abbe44b85aa0f/third_party/WebKit/Source/platform/scheduler/renderer/throttled_time_domain.cc
[modify] https://crrev.com/469e3d5d1a527c19a07df597399abbe44b85aa0f/third_party/WebKit/Source/platform/scheduler/renderer/throttled_time_domain.h
[modify] https://crrev.com/469e3d5d1a527c19a07df597399abbe44b85aa0f/third_party/WebKit/public/platform/scheduler/base/task_queue.h

Project Member

Comment 11 by bugdroid1@chromium.org, Feb 21 2017

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

commit 2f16bd68bd7e191db66f96d2c761017902074d91
Author: alexclarke <alexclarke@chromium.org>
Date: Tue Feb 21 08:54:13 2017

Dont post delayed DoWork for disabled queues. We could do this for
fences too but don't because that would break the throttling logic
which needs to know when the next delayed task is due to be run.

Contains a fix for the bug which previously was causing renderer hangs.

TaskQueue::GetNextScheduledWakeUp must return base::nullopt for
disabled queues because we no longer schedule wakeups for those. If we
don't do this then the TaskQueueThrottler will be fed misleading data
which causes it to misbehave.

BUG= 671669 ,  688422 , 693672

Committed: https://crrev.com/cab9842ac55e5b9dab766f11c6e412949d854483
Cr-Original-Original-Original-Commit-Position: refs/heads/master@{#438962}
Review-Url: https://codereview.chromium.org/2572893002
Cr-Original-Original-Commit-Position: refs/heads/master@{#447591}
Committed: https://chromium.googlesource.com/chromium/src/+/9a8a61516e750796f74869167bb919a05551d4dd
Review-Url: https://codereview.chromium.org/2572893002
Cr-Original-Commit-Position: refs/heads/master@{#450679}
Committed: https://chromium.googlesource.com/chromium/src/+/c4b071b9088980c941d3dea85478b10675a479e6
Review-Url: https://codereview.chromium.org/2572893002
Cr-Commit-Position: refs/heads/master@{#451715}

[modify] https://crrev.com/2f16bd68bd7e191db66f96d2c761017902074d91/third_party/WebKit/Source/platform/scheduler/base/real_time_domain.cc
[modify] https://crrev.com/2f16bd68bd7e191db66f96d2c761017902074d91/third_party/WebKit/Source/platform/scheduler/base/real_time_domain.h
[modify] https://crrev.com/2f16bd68bd7e191db66f96d2c761017902074d91/third_party/WebKit/Source/platform/scheduler/base/task_queue_impl.cc
[modify] https://crrev.com/2f16bd68bd7e191db66f96d2c761017902074d91/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager.cc
[modify] https://crrev.com/2f16bd68bd7e191db66f96d2c761017902074d91/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager.h
[modify] https://crrev.com/2f16bd68bd7e191db66f96d2c761017902074d91/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager_perftest.cc
[modify] https://crrev.com/2f16bd68bd7e191db66f96d2c761017902074d91/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager_unittest.cc
[modify] https://crrev.com/2f16bd68bd7e191db66f96d2c761017902074d91/third_party/WebKit/Source/platform/scheduler/base/task_queue_selector_unittest.cc
[modify] https://crrev.com/2f16bd68bd7e191db66f96d2c761017902074d91/third_party/WebKit/Source/platform/scheduler/base/time_domain.cc
[modify] https://crrev.com/2f16bd68bd7e191db66f96d2c761017902074d91/third_party/WebKit/Source/platform/scheduler/base/time_domain.h
[modify] https://crrev.com/2f16bd68bd7e191db66f96d2c761017902074d91/third_party/WebKit/Source/platform/scheduler/base/time_domain_unittest.cc
[modify] https://crrev.com/2f16bd68bd7e191db66f96d2c761017902074d91/third_party/WebKit/Source/platform/scheduler/base/virtual_time_domain.cc
[modify] https://crrev.com/2f16bd68bd7e191db66f96d2c761017902074d91/third_party/WebKit/Source/platform/scheduler/base/virtual_time_domain.h
[modify] https://crrev.com/2f16bd68bd7e191db66f96d2c761017902074d91/third_party/WebKit/Source/platform/scheduler/renderer/auto_advancing_virtual_time_domain.cc
[modify] https://crrev.com/2f16bd68bd7e191db66f96d2c761017902074d91/third_party/WebKit/Source/platform/scheduler/renderer/auto_advancing_virtual_time_domain.h
[modify] https://crrev.com/2f16bd68bd7e191db66f96d2c761017902074d91/third_party/WebKit/Source/platform/scheduler/renderer/task_queue_throttler_unittest.cc
[modify] https://crrev.com/2f16bd68bd7e191db66f96d2c761017902074d91/third_party/WebKit/Source/platform/scheduler/renderer/throttled_time_domain.cc
[modify] https://crrev.com/2f16bd68bd7e191db66f96d2c761017902074d91/third_party/WebKit/Source/platform/scheduler/renderer/throttled_time_domain.h
[modify] https://crrev.com/2f16bd68bd7e191db66f96d2c761017902074d91/third_party/WebKit/public/platform/scheduler/base/task_queue.h

Sign in to add a comment