Surface Synchronization: Update dependencies on discard |
|||||
Issue descriptionIf a Surface is discarded that holds a pending CompositorFrame, we should consider immediately unblocking CompositorFrame that depend on that deleted Surface. Right now this will be handled on its own: a deadline will hit and the surface will be activated anyway, but we should consider doing the cleanup early and put something on screen immediately. This is likely a very rare case in practice, however.
,
Feb 7 2017
,
Feb 14 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/2d9cf213310be917ade1a3f21d665fc0511e1e10 commit 2d9cf213310be917ade1a3f21d665fc0511e1e10 Author: fsamuel <fsamuel@chromium.org> Date: Tue Feb 14 00:09:33 2017 Evicted frames should immediately unblock dependent CompositorFrames Prior to this CL, if a Surface is evicted, we would not immediately unblock its dependent Surfaces. This causes parent Frames to block until the deadline hits. This can cause unnecessary jank during cross- process navigation and may cause the browser UI to become unresponsive briefly. This CL immediately unblocks the parent CompositorFrame if the child Surface is evicted. Note that this CL is a pre-requisite to allowing SurfaceFactory to always observe its current Surface, which is necessary so that it is informed when referenced surfaces change and can tell its client to update its reference tracking. This allows the garbage collection system to immediately garbage collect surfaces that are no longer referenced from a parent Surface once a pending frame has replaced an existing active frame. That change is coming in a subsequent CL. BUG= 689725 CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel Review-Url: https://codereview.chromium.org/2689213003 Cr-Commit-Position: refs/heads/master@{#450165} [modify] https://crrev.com/2d9cf213310be917ade1a3f21d665fc0511e1e10/cc/surfaces/compositor_frame_sink_support_unittest.cc [modify] https://crrev.com/2d9cf213310be917ade1a3f21d665fc0511e1e10/cc/surfaces/surface_dependency_tracker.cc
,
Feb 18 2017
,
Jun 13 2017
,
Feb 26 2018
|
|||||
►
Sign in to add a comment |
|||||
Comment 1 by fsam...@chromium.org
, Feb 7 2017