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

Issue 11028132: cc: The recent texture manager bug uncovered some unnecessary code (Closed)

Created:
8 years, 2 months ago by epenner
Modified:
8 years, 1 month ago
CC:
chromium-reviews, cc-bugs_chromium.org
Base URL:
http://git.chromium.org/chromium/src.git@master
Visibility:
Public.

Description

One good thing (the only good thing?) about the recent texture manager bug, is that it clarified where in-use-on-impl textures need to be protected (in the texture manager - the lack of which was the bug). The deleteTextureAfterCommit mechanism protects the 'front-buffer' when double-buffering updates, but it was never quite functional since it doesn't protect 'front-buffer' textures for layers which are deleted entirely while they still exist in the impl-tree. Since the texture manager takes care of this, we can remove this redundant protection code and just discard the texture backing when a buffered update is required. Once textures live primarily on the impl-thread and can be removed from the impl-tree, the notion of 'in-use' can become much more accurate, and the number of textures which are not safe to be evicted or recycled will be greatly reduced. Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=164131

Patch Set 1 : Tiled Layer Cleanup #

Patch Set 2 : Rebase #

Total comments: 3

Patch Set 3 : Moved returnBackingTexture and dirty the tile #

Total comments: 2

Patch Set 4 : Use 'dirtyRect' rather than 'updateRect' due to moving the code. #

Patch Set 5 : Do tile->dirtyRect= in only one place. #

Patch Set 6 : Make haveTexturesForTilesConst #

Total comments: 2

Patch Set 7 : Keep extra dirtyRect= #

Patch Set 8 : Rebase #

Patch Set 9 : Rebase to ToT #

Unified diffs Side-by-side diffs Delta from patch set Stats (+32 lines, -80 lines) Patch
M cc/layer_tree_host.h View 1 2 3 4 5 6 7 2 chunks +0 lines, -2 lines 0 comments Download
M cc/layer_tree_host.cc View 1 2 3 4 5 6 7 2 chunks +0 lines, -6 lines 0 comments Download
M cc/overdraw_metrics.h View 1 2 3 4 5 6 1 chunk +1 line, -1 line 0 comments Download
M cc/overdraw_metrics.cc View 1 2 3 4 5 6 7 1 chunk +2 lines, -2 lines 0 comments Download
M cc/prioritized_texture.h View 1 2 3 4 5 6 1 chunk +2 lines, -0 lines 0 comments Download
M cc/prioritized_texture.cc View 1 2 3 4 5 6 1 chunk +7 lines, -0 lines 0 comments Download
M cc/tiled_layer.cc View 1 2 3 4 5 6 7 8 8 chunks +20 lines, -69 lines 0 comments Download

Messages

Total messages: 24 (0 generated)
epenner
Rebased. ptal
8 years, 2 months ago (2012-10-17 23:00:22 UTC) #1
danakj
https://codereview.chromium.org/11028132/diff/6001/cc/tiled_layer.cc File cc/tiled_layer.cc (left): https://codereview.chromium.org/11028132/diff/6001/cc/tiled_layer.cc#oldcode620 cc/tiled_layer.cc:620: tile->dirtyRect = tileRect; who's doing this now?
8 years, 2 months ago (2012-10-17 23:19:37 UTC) #2
epenner
https://codereview.chromium.org/11028132/diff/6001/cc/tiled_layer.cc File cc/tiled_layer.cc (left): https://codereview.chromium.org/11028132/diff/6001/cc/tiled_layer.cc#oldcode620 cc/tiled_layer.cc:620: tile->dirtyRect = tileRect; Throwing the texture away will make ...
8 years, 2 months ago (2012-10-17 23:33:14 UTC) #3
danakj
lgtm https://codereview.chromium.org/11028132/diff/6001/cc/tiled_layer.cc File cc/tiled_layer.cc (right): https://codereview.chromium.org/11028132/diff/6001/cc/tiled_layer.cc#newcode329 cc/tiled_layer.cc:329: if (!haveTexturesForTiles(left, top, right, bottom, ignoreOcclusions)) { I ...
8 years, 2 months ago (2012-10-17 23:39:44 UTC) #4
epenner
On 2012/10/17 23:39:44, danakj wrote: > lgtm > > https://codereview.chromium.org/11028132/diff/6001/cc/tiled_layer.cc > File cc/tiled_layer.cc (right): > ...
8 years, 2 months ago (2012-10-18 00:30:19 UTC) #5
danakj
https://codereview.chromium.org/11028132/diff/15001/cc/tiled_layer.cc File cc/tiled_layer.cc (right): https://codereview.chromium.org/11028132/diff/15001/cc/tiled_layer.cc#newcode432 cc/tiled_layer.cc:432: tile->managedTexture()->returnBackingTexture(); Can we do this stuff before haveTexturesForTiles is ...
8 years, 2 months ago (2012-10-18 00:39:04 UTC) #6
epennerAtGoogle
https://codereview.chromium.org/11028132/diff/15001/cc/tiled_layer.cc File cc/tiled_layer.cc (right): https://codereview.chromium.org/11028132/diff/15001/cc/tiled_layer.cc#newcode432 cc/tiled_layer.cc:432: tile->managedTexture()->returnBackingTexture(); On 2012/10/18 00:39:05, danakj wrote: > Can we ...
8 years, 2 months ago (2012-10-18 00:52:27 UTC) #7
danakj
On Wed, Oct 17, 2012 at 8:52 PM, <epenner@google.com> wrote: > > https://codereview.chromium.org/11028132/diff/15001/cc/tiled_layer.cc > File ...
8 years, 2 months ago (2012-10-18 01:05:09 UTC) #8
epenner
> >> Can we do this stuff before haveTexturesForTiles is called? Or perhaps inside haveTextureForTiles? ...
8 years, 2 months ago (2012-10-18 01:21:00 UTC) #9
danakj
On Thu, Oct 18, 2012 at 1:21 AM, <epenner@chromium.org> wrote: >> >> Can we do ...
8 years, 2 months ago (2012-10-18 01:35:45 UTC) #10
danakj
On Thu, Oct 18, 2012 at 12:30 AM, <epenner@chromium.org> wrote: > Yes, but you were ...
8 years, 2 months ago (2012-10-18 01:51:38 UTC) #11
epennerAtGoogle
On 2012/10/18 01:51:38, danakj wrote: > On Thu, Oct 18, 2012 at 12:30 AM, <mailto:epenner@chromium.org> ...
8 years, 2 months ago (2012-10-18 02:52:17 UTC) #12
danakj
On 2012/10/18 02:52:17, epennerAtGoogle wrote: > I added the const. I think this is a ...
8 years, 2 months ago (2012-10-18 03:03:42 UTC) #13
epennerAtGoogle
> Thanks! This LGTM! I am wondering about a test because the first version of ...
8 years, 2 months ago (2012-10-18 03:24:23 UTC) #14
epenner
Darn. Layout test trybot seem to be failing on masks since I moved that dirtyRect= ...
8 years, 2 months ago (2012-10-18 05:11:43 UTC) #15
danakj
On Thu, Oct 18, 2012 at 1:11 AM, <epenner@chromium.org> wrote: > Darn. Layout test trybot ...
8 years, 2 months ago (2012-10-18 16:52:41 UTC) #16
enne (OOO)
I like this cleanup a lot. lgtm, assuming you sort out the layout test mask ...
8 years, 2 months ago (2012-10-18 18:26:33 UTC) #17
reveman
On 2012/10/18 02:52:17, epennerAtGoogle wrote: > On 2012/10/18 01:51:38, danakj wrote: > > On Thu, ...
8 years, 2 months ago (2012-10-19 04:53:05 UTC) #18
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/epenner@chromium.org/11028132/40001
8 years, 2 months ago (2012-10-25 00:11:47 UTC) #19
commit-bot: I haz the power
Retried try job too often for step(s) content_browsertests
8 years, 2 months ago (2012-10-25 01:45:43 UTC) #20
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/epenner@chromium.org/11028132/40001
8 years, 2 months ago (2012-10-25 02:50:16 UTC) #21
commit-bot: I haz the power
Retried try job too often for step(s) content_browsertests
8 years, 1 month ago (2012-10-25 07:17:47 UTC) #22
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/epenner@chromium.org/11028132/51002
8 years, 1 month ago (2012-10-25 17:08:32 UTC) #23
commit-bot: I haz the power
8 years, 1 month ago (2012-10-25 19:06:44 UTC) #24
Change committed as 164131

Powered by Google App Engine
This is Rietveld 408576698