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

Issue 640063010: cc: Don't swap PictureLayerTilingSet on activate. (Closed)

Created:
6 years, 1 month ago by danakj
Modified:
6 years ago
Reviewers:
vmpstr, enne (OOO)
CC:
enne (OOO), cc-bugs_chromium.org, chromium-reviews, hendrikw, vmpstr
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Project:
chromium
Visibility:
Public.

Description

cc: Don't swap PictureLayerTilingSet on activate. When activating, create new tilings on the active tree and make new shared tiles. This way we don't have tilings on the recycle tree from two frames ago, and the path which data travels is much more clear. BUG=387116 Committed: https://crrev.com/a4ed6a25c69c34c986f36f01ecb5645babbdeed7 Cr-Commit-Position: refs/heads/master@{#307816}

Patch Set 1 : noswap: #

Patch Set 2 : noswap: perftest #

Total comments: 48

Patch Set 3 : noswap: copy-tilepriorityrects-on-activate #

Patch Set 4 : noswap: rebase #

Patch Set 5 : noswap: fixedrebase #

Patch Set 6 : noswap: reviewround1 #

Total comments: 4

Patch Set 7 : noswap: fixperftests #

Patch Set 8 : noswap: maskconstructor #

Total comments: 2

Patch Set 9 : noswap: EverythingIsAwesome #

Patch Set 10 : noswap: bettertodo #

Patch Set 11 : noswap: YetAnotherRebase #

Total comments: 12

Patch Set 12 : noswap: FixPerftestCompile #

Patch Set 13 : noswap: RemoveLOGERRORs #

Total comments: 13

Patch Set 14 : noswap: reviews #

Patch Set 15 : noswap: . #

Total comments: 4

Patch Set 16 : noswap: constauto #

Patch Set 17 : noswap: nullconsistency #

Patch Set 18 : noswap: . #

Patch Set 19 : noswap: rebase #

Unified diffs Side-by-side diffs Delta from patch set Stats (+1361 lines, -1398 lines) Patch
M cc/layers/picture_image_layer.cc View 1 2 3 4 5 6 7 1 chunk +1 line, -1 line 0 comments Download
M cc/layers/picture_image_layer_impl.h View 1 2 3 4 5 6 7 2 chunks +4 lines, -3 lines 0 comments Download
M cc/layers/picture_image_layer_impl.cc View 1 2 3 4 5 6 7 2 chunks +5 lines, -3 lines 0 comments Download
M cc/layers/picture_image_layer_impl_unittest.cc View 1 2 3 4 5 6 7 1 chunk +1 line, -2 lines 0 comments Download
M cc/layers/picture_layer.h View 1 2 3 4 5 6 7 1 chunk +4 lines, -1 line 0 comments Download
M cc/layers/picture_layer.cc View 1 2 3 4 5 6 7 2 chunks +6 lines, -7 lines 0 comments Download
M cc/layers/picture_layer_impl.h View 1 2 3 4 5 6 7 8 9 10 5 chunks +9 lines, -7 lines 0 comments Download
M cc/layers/picture_layer_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 14 chunks +75 lines, -117 lines 0 comments Download
M cc/layers/picture_layer_impl_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 116 chunks +887 lines, -1035 lines 0 comments Download
M cc/resources/picture_layer_tiling.h View 1 2 3 4 5 6 7 8 3 chunks +18 lines, -13 lines 0 comments Download
M cc/resources/picture_layer_tiling.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 6 chunks +155 lines, -105 lines 0 comments Download
M cc/resources/picture_layer_tiling_perftest.cc View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +1 line, -3 lines 0 comments Download
M cc/resources/picture_layer_tiling_set.h View 1 2 3 4 5 6 7 8 9 2 chunks +19 lines, -8 lines 0 comments Download
M cc/resources/picture_layer_tiling_set.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 5 chunks +87 lines, -23 lines 0 comments Download
M cc/resources/picture_layer_tiling_set_unittest.cc View 1 2 3 4 5 1 chunk +3 lines, -2 lines 0 comments Download
M cc/resources/picture_layer_tiling_unittest.cc View 1 2 3 4 5 6 7 8 6 chunks +11 lines, -14 lines 0 comments Download
M cc/resources/tile_manager_unittest.cc View 1 2 3 4 5 6 7 8 4 chunks +5 lines, -17 lines 0 comments Download
M cc/test/fake_picture_layer_impl.h View 1 2 3 4 5 6 7 6 chunks +26 lines, -6 lines 0 comments Download
M cc/test/fake_picture_layer_impl.cc View 1 2 3 4 5 6 7 3 chunks +28 lines, -19 lines 0 comments Download
M cc/trees/layer_tree_host_impl_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 2 chunks +2 lines, -2 lines 0 comments Download
M cc/trees/layer_tree_host_unittest_picture.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 2 chunks +14 lines, -10 lines 0 comments Download

Messages

Total messages: 41 (16 generated)
danakj
So this works and passes tests. There's a tonne of TODOs left to address (not ...
6 years ago (2014-11-30 19:21:00 UTC) #9
enne (OOO)
https://codereview.chromium.org/640063010/diff/180001/cc/layers/picture_layer_impl.cc File cc/layers/picture_layer_impl.cc (left): https://codereview.chromium.org/640063010/diff/180001/cc/layers/picture_layer_impl.cc#oldcode892 cc/layers/picture_layer_impl.cc:892: twin_layer->SyncTiling(tiling); Just to make sure I understand, this is ...
6 years ago (2014-12-01 22:08:17 UTC) #11
vmpstr
https://codereview.chromium.org/640063010/diff/180001/cc/layers/picture_layer_impl.cc File cc/layers/picture_layer_impl.cc (right): https://codereview.chromium.org/640063010/diff/180001/cc/layers/picture_layer_impl.cc#newcode581 cc/layers/picture_layer_impl.cc:581: // The |new_invalidation| must be cleared before updating tilings ...
6 years ago (2014-12-01 22:38:04 UTC) #13
danakj
I've addressed feedback that was easy to address, and fixed the crashes on the bots ...
6 years ago (2014-12-05 22:30:45 UTC) #15
enne (OOO)
https://codereview.chromium.org/640063010/diff/180001/cc/layers/picture_layer_impl.cc File cc/layers/picture_layer_impl.cc (right): https://codereview.chromium.org/640063010/diff/180001/cc/layers/picture_layer_impl.cc#newcode77 cc/layers/picture_layer_impl.cc:77: // TODO(danakj): Can this be null to start? On ...
6 years ago (2014-12-05 23:02:02 UTC) #16
danakj
https://codereview.chromium.org/640063010/diff/180001/cc/layers/picture_layer_impl.h File cc/layers/picture_layer_impl.h (right): https://codereview.chromium.org/640063010/diff/180001/cc/layers/picture_layer_impl.h#newcode150 cc/layers/picture_layer_impl.h:150: bool is_mask, On 2014/12/05 23:02:02, enne wrote: > On ...
6 years ago (2014-12-06 17:14:08 UTC) #17
danakj
ok fixed those things! (perftests and is_mask via constructor)
6 years ago (2014-12-06 17:46:09 UTC) #18
danakj
https://codereview.chromium.org/640063010/diff/180001/cc/resources/picture_layer_tiling_set.cc File cc/resources/picture_layer_tiling_set.cc (right): https://codereview.chromium.org/640063010/diff/180001/cc/resources/picture_layer_tiling_set.cc#newcode64 cc/resources/picture_layer_tiling_set.cc:64: tiling->UpdateTilesToCurrentRasterSource(raster_source, layer_invalidation, On 2014/12/01 22:38:04, vmpstr wrote: > I ...
6 years ago (2014-12-08 16:49:26 UTC) #19
enne (OOO)
lgtm. I think there's a bunch of cleanup to be had after this, but this ...
6 years ago (2014-12-08 21:02:38 UTC) #20
danakj
Everything is now more awesome. I have a single method on PLTS, which removes the ...
6 years ago (2014-12-08 22:27:08 UTC) #21
enne (OOO)
https://codereview.chromium.org/640063010/diff/380001/cc/resources/picture_layer_tiling.cc File cc/resources/picture_layer_tiling.cc (right): https://codereview.chromium.org/640063010/diff/380001/cc/resources/picture_layer_tiling.cc#newcode139 cc/resources/picture_layer_tiling.cc:139: LOG(ERROR) << "Create unshared tile"; <_< https://codereview.chromium.org/640063010/diff/380001/cc/resources/picture_layer_tiling.cc#newcode170 cc/resources/picture_layer_tiling.cc:170: void ...
6 years ago (2014-12-08 23:22:38 UTC) #22
vmpstr
https://codereview.chromium.org/640063010/diff/410001/cc/base/scoped_ptr_vector.h File cc/base/scoped_ptr_vector.h (right): https://codereview.chromium.org/640063010/diff/410001/cc/base/scoped_ptr_vector.h#newcode167 cc/base/scoped_ptr_vector.h:167: iterator remove_if(Predicate predicate) { Gone after rebase? https://codereview.chromium.org/640063010/diff/410001/cc/layers/picture_layer_impl.cc File ...
6 years ago (2014-12-09 00:10:19 UTC) #23
danakj
PTAL https://codereview.chromium.org/640063010/diff/380001/cc/resources/picture_layer_tiling.cc File cc/resources/picture_layer_tiling.cc (right): https://codereview.chromium.org/640063010/diff/380001/cc/resources/picture_layer_tiling.cc#newcode139 cc/resources/picture_layer_tiling.cc:139: LOG(ERROR) << "Create unshared tile"; On 2014/12/08 23:22:37, ...
6 years ago (2014-12-09 18:20:23 UTC) #24
enne (OOO)
https://codereview.chromium.org/640063010/diff/380001/cc/resources/picture_layer_tiling.cc File cc/resources/picture_layer_tiling.cc (right): https://codereview.chromium.org/640063010/diff/380001/cc/resources/picture_layer_tiling.cc#newcode195 cc/resources/picture_layer_tiling.cc:195: RemoveTileAt(key.first, key.second, recycled_twin); On 2014/12/09 18:20:22, danakj wrote: > ...
6 years ago (2014-12-09 18:23:40 UTC) #25
danakj
PTAL https://codereview.chromium.org/640063010/diff/380001/cc/resources/picture_layer_tiling.cc File cc/resources/picture_layer_tiling.cc (right): https://codereview.chromium.org/640063010/diff/380001/cc/resources/picture_layer_tiling.cc#newcode195 cc/resources/picture_layer_tiling.cc:195: RemoveTileAt(key.first, key.second, recycled_twin); On 2014/12/09 18:23:40, enne wrote: ...
6 years ago (2014-12-09 18:26:08 UTC) #26
enne (OOO)
lgtm again, thanks. https://codereview.chromium.org/640063010/diff/450001/cc/resources/picture_layer_tiling.cc File cc/resources/picture_layer_tiling.cc (right): https://codereview.chromium.org/640063010/diff/450001/cc/resources/picture_layer_tiling.cc#newcode198 cc/resources/picture_layer_tiling.cc:198: for (auto tile_map_pair : tiles_) const ...
6 years ago (2014-12-09 18:30:37 UTC) #27
danakj
https://codereview.chromium.org/640063010/diff/450001/cc/resources/picture_layer_tiling.cc File cc/resources/picture_layer_tiling.cc (right): https://codereview.chromium.org/640063010/diff/450001/cc/resources/picture_layer_tiling.cc#newcode198 cc/resources/picture_layer_tiling.cc:198: for (auto tile_map_pair : tiles_) On 2014/12/09 18:30:37, enne ...
6 years ago (2014-12-09 18:31:15 UTC) #28
vmpstr
lgtm as well https://codereview.chromium.org/640063010/diff/450001/cc/resources/picture_layer_tiling.cc File cc/resources/picture_layer_tiling.cc (right): https://codereview.chromium.org/640063010/diff/450001/cc/resources/picture_layer_tiling.cc#newcode327 cc/resources/picture_layer_tiling.cc:327: PictureLayerTiling* recycled_twin = NULL; nit: null_recycled_twin ...
6 years ago (2014-12-09 18:36:06 UTC) #29
danakj
https://codereview.chromium.org/640063010/diff/450001/cc/resources/picture_layer_tiling.cc File cc/resources/picture_layer_tiling.cc (right): https://codereview.chromium.org/640063010/diff/450001/cc/resources/picture_layer_tiling.cc#newcode327 cc/resources/picture_layer_tiling.cc:327: PictureLayerTiling* recycled_twin = NULL; On 2014/12/09 18:36:05, vmpstr wrote: ...
6 years ago (2014-12-09 18:36:45 UTC) #30
danakj
I'm concerned this seems to cause some content shell tests to time out on android.. ...
6 years ago (2014-12-09 18:37:31 UTC) #31
danakj
ok this should be good to land now.
6 years ago (2014-12-10 23:23:00 UTC) #34
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/640063010/570001
6 years ago (2014-12-10 23:26:50 UTC) #36
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/640063010/570001
6 years ago (2014-12-11 00:12:53 UTC) #39
commit-bot: I haz the power
Committed patchset #19 (id:570001)
6 years ago (2014-12-11 01:09:47 UTC) #40
commit-bot: I haz the power
6 years ago (2014-12-11 01:10:28 UTC) #41
Message was sent while issue was closed.
Patchset 19 (id:??) landed as
https://crrev.com/a4ed6a25c69c34c986f36f01ecb5645babbdeed7
Cr-Commit-Position: refs/heads/master@{#307816}

Powered by Google App Engine
This is Rietveld 408576698