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

Issue 1801853002: Transfer LayerImpl ownership to LayerTreeImpl (Closed)

Created:
4 years, 9 months ago by Ian Vollick
Modified:
4 years, 9 months ago
Reviewers:
ajuma, Yaron
CC:
chromium-reviews, cc-bugs_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Transfer LayerImpl ownership to LayerTreeImpl I have taken a very simple strategy. I have retained all LayerImpl functions related to transfer of ownership (AddChild, etc). These now update raw pointers on the LayerImpl as well as updating true ownership by talking to the LTI. This allows most unit test code to remain as is. LayerImpl's may be constructed and ownership may be transferred just as it had been. BUG=594026 CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel Committed: https://crrev.com/83fbfc832bb24abbea9c9dfa4ff17ad20bc047f4 Cr-Commit-Position: refs/heads/master@{#382619}

Patch Set 1 #

Patch Set 2 : tree sync tests all pass. only 8 remaining failures. #

Patch Set 3 : . #

Patch Set 4 : rebaaase. #

Total comments: 6

Patch Set 5 : . #

Patch Set 6 : Address reviewer feedback. #

Patch Set 7 : fix browser tests #

Total comments: 1

Patch Set 8 : Fix asan issues. #

Patch Set 9 : big rebase. #

Patch Set 10 : more asan. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+581 lines, -589 lines) Patch
M cc/BUILD.gn View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M cc/cc.gyp View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M cc/debug/debug_rect_history.h View 1 2 3 4 5 6 7 8 1 chunk +1 line, -1 line 0 comments Download
M cc/layers/layer.h View 1 2 3 4 5 6 7 8 1 chunk +1 line, -1 line 0 comments Download
A cc/layers/layer_collections.h View 1 2 3 4 5 1 chunk +27 lines, -0 lines 0 comments Download
M cc/layers/layer_impl.h View 1 2 3 4 5 6 6 chunks +14 lines, -14 lines 0 comments Download
M cc/layers/layer_impl.cc View 1 2 3 4 5 6 7 8 9 8 chunks +39 lines, -19 lines 0 comments Download
M cc/layers/layer_impl_unittest.cc View 1 2 3 2 chunks +3 lines, -3 lines 0 comments Download
M cc/layers/layer_list_iterator.cc View 4 chunks +8 lines, -8 lines 0 comments Download
D cc/layers/layer_lists.h View 1 chunk +0 lines, -24 lines 0 comments Download
M cc/layers/layer_position_constraint_unittest.cc View 1 2 3 5 chunks +11 lines, -15 lines 0 comments Download
M cc/layers/layer_unittest.cc View 1 2 3 4 5 6 7 8 1 chunk +1 line, -1 line 0 comments Download
M cc/layers/layer_utils_unittest.cc View 1 2 3 1 chunk +6 lines, -6 lines 0 comments Download
M cc/layers/picture_layer_impl_perftest.cc View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M cc/layers/picture_layer_impl_unittest.cc View 1 2 3 4 5 6 7 9 chunks +14 lines, -13 lines 0 comments Download
M cc/layers/render_surface_impl.h View 1 chunk +1 line, -1 line 0 comments Download
M cc/layers/render_surface_impl_unittest.cc View 1 chunk +1 line, -1 line 0 comments Download
M cc/layers/scrollbar_layer_unittest.cc View 1 2 3 7 chunks +10 lines, -10 lines 0 comments Download
M cc/test/fake_layer_tree_host.cc View 1 2 3 4 5 6 7 8 2 chunks +2 lines, -11 lines 0 comments Download
M cc/test/fake_layer_tree_host_impl.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M cc/test/layer_tree_host_common_test.h View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M cc/test/layer_tree_json_parser_unittest.cc View 1 chunk +1 line, -1 line 0 comments Download
M cc/tiles/tile_manager_perftest.cc View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M cc/tiles/tile_manager_unittest.cc View 1 2 3 4 chunks +19 lines, -16 lines 0 comments Download
M cc/trees/damage_tracker.h View 1 chunk +1 line, -1 line 0 comments Download
M cc/trees/damage_tracker_unittest.cc View 1 2 3 29 chunks +41 lines, -41 lines 0 comments Download
M cc/trees/draw_property_utils.h View 1 chunk +1 line, -1 line 0 comments Download
M cc/trees/layer_tree_host.h View 1 2 3 4 5 6 7 8 1 chunk +1 line, -1 line 0 comments Download
M cc/trees/layer_tree_host.cc View 1 2 3 4 5 6 7 8 1 chunk +3 lines, -4 lines 0 comments Download
M cc/trees/layer_tree_host_common.h View 2 chunks +1 line, -6 lines 0 comments Download
M cc/trees/layer_tree_host_common.cc View 1 2 3 1 chunk +6 lines, -6 lines 0 comments Download
M cc/trees/layer_tree_host_common_perftest.cc View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M cc/trees/layer_tree_host_common_unittest.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M cc/trees/layer_tree_host_impl.h View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M cc/trees/layer_tree_host_impl.cc View 1 2 3 4 5 6 7 8 2 chunks +6 lines, -7 lines 0 comments Download
M cc/trees/layer_tree_host_impl_unittest.cc View 1 2 3 4 5 6 7 8 36 chunks +45 lines, -59 lines 0 comments Download
M cc/trees/layer_tree_host_unittest.cc View 1 2 3 4 5 6 7 8 4 chunks +9 lines, -11 lines 0 comments Download
M cc/trees/layer_tree_host_unittest_animation.cc View 1 2 3 8 chunks +8 lines, -8 lines 0 comments Download
M cc/trees/layer_tree_host_unittest_context.cc View 1 2 3 2 chunks +3 lines, -3 lines 0 comments Download
M cc/trees/layer_tree_host_unittest_copyrequest.cc View 1 2 3 2 chunks +4 lines, -4 lines 0 comments Download
M cc/trees/layer_tree_host_unittest_damage.cc View 1 2 3 2 chunks +4 lines, -4 lines 0 comments Download
M cc/trees/layer_tree_host_unittest_occlusion.cc View 1 2 3 5 chunks +5 lines, -5 lines 0 comments Download
M cc/trees/layer_tree_host_unittest_picture.cc View 1 2 3 10 chunks +14 lines, -17 lines 0 comments Download
M cc/trees/layer_tree_host_unittest_scroll.cc View 1 2 3 4 5 6 7 8 1 chunk +1 line, -1 line 0 comments Download
M cc/trees/layer_tree_host_unittest_video.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M cc/trees/layer_tree_impl.h View 1 2 3 4 chunks +10 lines, -5 lines 0 comments Download
M cc/trees/layer_tree_impl.cc View 1 2 3 4 5 6 7 12 chunks +51 lines, -15 lines 0 comments Download
M cc/trees/layer_tree_impl_unittest.cc View 1 2 3 6 chunks +12 lines, -12 lines 0 comments Download
M cc/trees/tree_synchronizer.h View 1 2 3 4 5 6 7 8 1 chunk +3 lines, -8 lines 0 comments Download
M cc/trees/tree_synchronizer.cc View 1 2 3 4 5 6 7 8 2 chunks +69 lines, -80 lines 0 comments Download
M cc/trees/tree_synchronizer_unittest.cc View 1 2 3 4 5 6 7 8 23 chunks +109 lines, -130 lines 0 comments Download
M chrome/browser/android/compositor/compositor_view.h View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/android/compositor/compositor_view.cc View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/android/compositor/layer/content_layer.cc View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/android/compositor/layer/tab_layer.cc View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download

Messages

Total messages: 49 (23 generated)
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1801853002/40001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1801853002/40001
4 years, 9 months ago (2016-03-18 18:11:56 UTC) #3
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: ios_dbg_simulator_ninja on tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios_dbg_simulator_ninja/builds/146828) ios_rel_device_gn on ...
4 years, 9 months ago (2016-03-18 18:14:53 UTC) #5
Ian Vollick
4 years, 9 months ago (2016-03-18 19:22:25 UTC) #9
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1801853002/60001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1801853002/60001
4 years, 9 months ago (2016-03-18 19:22:57 UTC) #10
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: android_chromium_gn_compile_dbg on tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/android_chromium_gn_compile_dbg/builds/38104) android_chromium_gn_compile_rel on ...
4 years, 9 months ago (2016-03-18 19:39:59 UTC) #12
ajuma
The strategy taken here looks great. https://codereview.chromium.org/1801853002/diff/60001/cc/layers/layer_collections.h File cc/layers/layer_collections.h (right): https://codereview.chromium.org/1801853002/diff/60001/cc/layers/layer_collections.h#newcode1 cc/layers/layer_collections.h:1: // Copyright 2013 ...
4 years, 9 months ago (2016-03-18 22:09:21 UTC) #13
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1801853002/80001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1801853002/80001
4 years, 9 months ago (2016-03-19 02:31:52 UTC) #15
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1801853002/100001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1801853002/100001
4 years, 9 months ago (2016-03-19 03:05:13 UTC) #17
Ian Vollick
https://codereview.chromium.org/1801853002/diff/60001/cc/layers/layer_collections.h File cc/layers/layer_collections.h (right): https://codereview.chromium.org/1801853002/diff/60001/cc/layers/layer_collections.h#newcode1 cc/layers/layer_collections.h:1: // Copyright 2013 The Chromium Authors. All rights reserved. ...
4 years, 9 months ago (2016-03-19 03:05:23 UTC) #18
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: linux_chromium_chromeos_rel_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_chromeos_rel_ng/builds/183870)
4 years, 9 months ago (2016-03-19 03:45:08 UTC) #20
Ian Vollick
On 2016/03/19 03:45:08, commit-bot: I haz the power wrote: > Dry run: Try jobs failed ...
4 years, 9 months ago (2016-03-19 04:23:42 UTC) #21
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1801853002/120001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1801853002/120001
4 years, 9 months ago (2016-03-21 14:27:29 UTC) #23
Ian Vollick
https://codereview.chromium.org/1801853002/diff/120001/cc/trees/tree_synchronizer.cc File cc/trees/tree_synchronizer.cc (right): https://codereview.chromium.org/1801853002/diff/120001/cc/trees/tree_synchronizer.cc#newcode81 cc/trees/tree_synchronizer.cc:81: layer_impl->children().clear(); The issue here was that ClearChildList had ownership ...
4 years, 9 months ago (2016-03-21 15:01:49 UTC) #24
ajuma
Thanks, lgtm
4 years, 9 months ago (2016-03-21 15:09:51 UTC) #25
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: win_chromium_rel_ng on tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_ng/builds/192022)
4 years, 9 months ago (2016-03-21 15:31:53 UTC) #27
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1801853002/140001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1801853002/140001
4 years, 9 months ago (2016-03-21 18:08:47 UTC) #29
Ian Vollick
On 2016/03/21 18:08:47, commit-bot: I haz the power wrote: > Dry run: CQ is trying ...
4 years, 9 months ago (2016-03-21 19:02:01 UTC) #31
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: linux_chromium_asan_rel_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_asan_rel_ng/builds/133779)
4 years, 9 months ago (2016-03-21 20:00:33 UTC) #33
Yaron
lgtm
4 years, 9 months ago (2016-03-22 02:51:19 UTC) #34
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1801853002/160001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1801853002/160001
4 years, 9 months ago (2016-03-22 14:27:07 UTC) #36
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: linux_chromium_asan_rel_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_asan_rel_ng/builds/134285)
4 years, 9 months ago (2016-03-22 16:25:13 UTC) #38
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1801853002/180001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1801853002/180001
4 years, 9 months ago (2016-03-22 17:01:32 UTC) #40
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
4 years, 9 months ago (2016-03-22 18:09:25 UTC) #42
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1801853002/180001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1801853002/180001
4 years, 9 months ago (2016-03-22 18:26:04 UTC) #45
commit-bot: I haz the power
Committed patchset #10 (id:180001)
4 years, 9 months ago (2016-03-22 18:33:38 UTC) #47
commit-bot: I haz the power
4 years, 9 months ago (2016-03-22 18:35:40 UTC) #49
Message was sent while issue was closed.
Patchset 10 (id:??) landed as
https://crrev.com/83fbfc832bb24abbea9c9dfa4ff17ad20bc047f4
Cr-Commit-Position: refs/heads/master@{#382619}

Powered by Google App Engine
This is Rietveld 408576698