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

Issue 2651413004: cc: Fix tile priority inversion in picture layer tiling. (Closed)

Created:
3 years, 10 months ago by vmpstr
Modified:
3 years, 10 months ago
Reviewers:
danakj
CC:
chromium-reviews, cc-bugs_chromium.org
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

cc: Fix tile priority inversion in picture layer tiling. This patch addresses the case where we can have a tile that is required for activation but is not in the NOW bin. This can happen since the check for whether the tile is required uses the tile's content_rect, which includes border pixels. However, the priority calculation for the tile uses TileBounds without the border pixels. This patch also moves the code to calculate required tile state from all of the different iterator call sites to MakePrioritizedTile, with an additional check to ensure that we never make a required tile outside of the now bin. R=danakj@chromium.org BUG=668892 CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel Review-Url: https://codereview.chromium.org/2651413004 Cr-Commit-Position: refs/heads/master@{#447293} Committed: https://chromium.googlesource.com/chromium/src/+/a062f034b9c367a0b3481e0390bcc0aca830b707

Patch Set 1 #

Total comments: 8

Patch Set 2 : whyyoucrash: update #

Patch Set 3 : whyyoucrash: update #

Total comments: 4

Patch Set 4 : whyyoucrash: update #

Patch Set 5 : whyyoucrash: update #

Patch Set 6 : whyyoucrash: update #

Unified diffs Side-by-side diffs Delta from patch set Stats (+76 lines, -16 lines) Patch
M cc/tiles/picture_layer_tiling.h View 1 2 3 1 chunk +4 lines, -2 lines 0 comments Download
M cc/tiles/picture_layer_tiling.cc View 1 2 3 4 5 6 chunks +22 lines, -6 lines 0 comments Download
M cc/tiles/picture_layer_tiling_unittest.cc View 1 2 3 4 2 chunks +47 lines, -0 lines 0 comments Download
M cc/tiles/tiling_set_eviction_queue.cc View 1 chunk +0 lines, -1 line 0 comments Download
M cc/tiles/tiling_set_raster_queue_all.cc View 3 chunks +3 lines, -5 lines 0 comments Download
M cc/tiles/tiling_set_raster_queue_required.cc View 2 chunks +0 lines, -2 lines 0 comments Download

Messages

Total messages: 23 (13 generated)
vmpstr
Please take a look.
3 years, 10 months ago (2017-01-27 23:40:31 UTC) #2
danakj
https://codereview.chromium.org/2651413004/diff/1/cc/tiles/picture_layer_tiling.cc File cc/tiles/picture_layer_tiling.cc (right): https://codereview.chromium.org/2651413004/diff/1/cc/tiles/picture_layer_tiling.cc#newcode819 cc/tiles/picture_layer_tiling.cc:819: tile->set_required_for_activation(is_now_bin && I don't see a test checking this ...
3 years, 10 months ago (2017-01-30 16:55:18 UTC) #3
vmpstr
Please take another look. https://codereview.chromium.org/2651413004/diff/1/cc/tiles/picture_layer_tiling.cc File cc/tiles/picture_layer_tiling.cc (right): https://codereview.chromium.org/2651413004/diff/1/cc/tiles/picture_layer_tiling.cc#newcode819 cc/tiles/picture_layer_tiling.cc:819: tile->set_required_for_activation(is_now_bin && On 2017/01/30 16:55:18, ...
3 years, 10 months ago (2017-01-30 19:38:21 UTC) #4
danakj
LGTM https://codereview.chromium.org/2651413004/diff/40001/cc/tiles/picture_layer_tiling.cc File cc/tiles/picture_layer_tiling.cc (right): https://codereview.chromium.org/2651413004/diff/40001/cc/tiles/picture_layer_tiling.cc#newcode822 cc/tiles/picture_layer_tiling.cc:822: (tile_priority.priority_bin == TilePriority::NOW || nit: this is nesting ...
3 years, 10 months ago (2017-01-30 19:42:21 UTC) #5
vmpstr
I've readded UpdateRequiredStatesOnTile (and am using it now), since https://codereview.chromium.org/2555743004/diff/460001/cc/tiles/tile_manager.cc?context=10&column_width=80&tab_spaces=8 (which is in review) relies ...
3 years, 10 months ago (2017-01-30 19:44:49 UTC) #6
danakj
That's fine sure LGTM
3 years, 10 months ago (2017-01-30 19:46:52 UTC) #7
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2651413004/80001
3 years, 10 months ago (2017-01-30 19:47:39 UTC) #9
commit-bot: I haz the power
Try jobs failed on following builders: mac_chromium_rel_ng on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_ng/builds/378619)
3 years, 10 months ago (2017-01-30 20:33:43 UTC) #11
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2651413004/100001
3 years, 10 months ago (2017-01-31 19:15:55 UTC) #20
commit-bot: I haz the power
3 years, 10 months ago (2017-01-31 19:22:35 UTC) #23
Message was sent while issue was closed.
Committed patchset #6 (id:100001) as
https://chromium.googlesource.com/chromium/src/+/a062f034b9c367a0b3481e0390bc...

Powered by Google App Engine
This is Rietveld 408576698