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

Issue 597710 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Mar 2016
Cc:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 1
Type: Bug

Blocking:
issue 597736



Sign in to add a comment

Remote compositor doesn't redraw if the commit after a new output surface early outs.

Project Member Reported by khushals...@chromium.org, Mar 24 2016

Issue description

Start the blimp client and put the application in background. The following sequence occurs.

1) LTH releases the output surface, causing the LTHI to destroy the output surface, release all resources and tiles.
2) We request a commit from the server. The commit requested from the server will early out with FINISHED_NO_UPDATES.
3) Since there is no pending tree, no draws are scheduled, and we never create new tiles on recovering.

This is not seen in threaded compositor, since the LTH will call SetNeedsCommit to set the max_requested_pipeline_stage_ to COMMIT_PIPELINE_STAGE, so the commit will never be aborted.

For blimp, we should just need to trigger a redraw when a new output surface is initialized.
 
Summary: Remote compositor doesn't redraw if the commit after a new output surface early outs. (was: Remote compositor doesn't redraw if the commit after a new output surface is aborted.)
Cc: klo...@chromium.org
Components: Mobile>Blimp>Client
Blocking: 597736
Project Member

Comment 4 by bugdroid1@chromium.org, Mar 25 2016

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

commit 01dc424291863fcaa3a36c3de7e91bfae6172c42
Author: khushalsagar <khushalsagar@chromium.org>
Date: Fri Mar 25 00:32:42 2016

cc: Force a redraw on initializing a new output surface for remote compositor.

When the output surface is lost, the LTHI drops all resources and tiles, and
waits for the next commit for the next draw. This commit might early out with
no updates in which case we will never perform raster new tiles and redraw.

Schedule a draw when a new output is surface is initialized to avoid this.

BUG= 597710 
CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel

Review URL: https://codereview.chromium.org/1831083002

Cr-Commit-Position: refs/heads/master@{#383204}

[modify] https://crrev.com/01dc424291863fcaa3a36c3de7e91bfae6172c42/cc/test/layer_tree_test.cc
[modify] https://crrev.com/01dc424291863fcaa3a36c3de7e91bfae6172c42/cc/test/layer_tree_test.h
[modify] https://crrev.com/01dc424291863fcaa3a36c3de7e91bfae6172c42/cc/trees/remote_channel_impl.cc
[modify] https://crrev.com/01dc424291863fcaa3a36c3de7e91bfae6172c42/cc/trees/remote_channel_impl.h
[modify] https://crrev.com/01dc424291863fcaa3a36c3de7e91bfae6172c42/cc/trees/remote_channel_unittest.cc

Status: Fixed (was: Assigned)
Labels: Archive-Blimp

Sign in to add a comment