DescriptionRevert of cc: Remove frame queuing from the scheduler. (patchset #3 id:40001 of https://codereview.chromium.org/2323063004/ )
Reason for revert:
Broke ChromeScreenshotGrabberTest.TakeScreenshot on Linux ChromiumOS Tests (dbg)(1): https://build.chromium.org/p/chromium.chromiumos/builders/Linux%20ChromiumOS%20Tests%20%28dbg%29%281%29/builds/18015.
Original issue's description:
> cc: Remove frame queuing from the scheduler.
>
> CC scheduler has a frame queuing mechanism called "retro frames". This
> has been responsible for a lot of complexity and hard to fix bugs. The
> original intent for adding retro frames was to allow the scheduler to
> handle multiple frames in flight but that goal doesn't seem feasible or
> even desirable any more. This CL removes the retro frames queue and
> instead makes the Scheduler end the previous frame when it receives a
> BeginFrame message.
>
> One surprising behavior was that SyntheticBFS MISSED frames would be
> queued as retro frames and this would convert the synchronous begin
> frame call (inside Scheduler::ProcessScheduledActions) to an
> asynchronous retro frame PostTask. To work around this the Scheduler
> keeps track of a single CancelableClosure that's used for MISSED frames.
>
> The above behavior was also causing the BeginFramesNotFromClient tests
> to work even though there was an extra MISSED frame in the queue. This
> is more elegantly solved in another way by using frame number to advance
> the task runner instead of just running pending tasks.
>
> Lastly SchedulerStateMachine is modified so that it's possible to end
> the previous frame and still have the same behavior as before in the
> commit to active tree (browser compositor) mode.
>
> R=brianderson@chromium.org,enne@chromium.org,danakj@chromium.org
> BUG=602485, 644992
> CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel
>
> Committed: https://crrev.com/559280b26cc5672f5f054e8ac35281e804c14d78
> Cr-Commit-Position: refs/heads/master@{#417764}
TBR=enne@chromium.org,brianderson@chromium.org,danakj@chromium.org,sunnyps@chromium.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=602485, 644992
Committed: https://crrev.com/95beb47e50065959ee2f5b43cf431431e32e14cd
Cr-Commit-Position: refs/heads/master@{#417895}
Patch Set 1 #
Messages
Total messages: 7 (2 generated)
|