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

Issue 640323002: Fix bug in GrCachedLayer reuse (Closed)

Created:
6 years, 2 months ago by robertphillips
Modified:
6 years, 2 months ago
Reviewers:
jvanverth1
CC:
reviews_skia.org
Base URL:
https://skia.googlesource.com/skia.git@master
Project:
skia
Visibility:
Public.

Description

Fix bug in GrCachedLayer reuse In the new MultiPictureDraw tests a single hoisted layer is reused multiple times. The previous plot locking scheme allowed GrCachedLayer objects to be aggressively deleted prematurely leaving the reusing GrHoistedLayer objects with dangling pointers. This CL changes adds a new pseudo-ref to GrCachedLayer. (It can't be a real ref since the cached layers aren't deleted when it goes to 0). Committed: https://skia.googlesource.com/skia/+/5c481666c9678f43e039ad605457be3854cf8de3 Committed: https://skia.googlesource.com/skia/+/7bb9ed756e8663afe68e1a5fc680d57f83a31fea

Patch Set 1 #

Patch Set 2 : clean up #

Patch Set 3 : Add missing piece #

Patch Set 4 : Different approach #

Patch Set 5 : Cleanup #

Patch Set 6 : Rename method #

Patch Set 7 : More cleanup #

Total comments: 2

Patch Set 8 : Improve comment #

Unified diffs Side-by-side diffs Delta from patch set Stats (+65 lines, -27 lines) Patch
M src/gpu/GrLayerCache.h View 1 2 3 4 5 6 chunks +31 lines, -2 lines 0 comments Download
M src/gpu/GrLayerCache.cpp View 1 2 3 4 5 6 7 9 chunks +16 lines, -6 lines 0 comments Download
M src/gpu/GrLayerHoister.cpp View 1 2 3 4 5 6 4 chunks +6 lines, -16 lines 0 comments Download
M tests/GpuLayerCacheTest.cpp View 1 2 3 4 5 4 chunks +12 lines, -3 lines 0 comments Download

Messages

Total messages: 16 (5 generated)
robertphillips
6 years, 2 months ago (2014-10-09 16:54:45 UTC) #2
jvanverth1
lgtm
6 years, 2 months ago (2014-10-09 19:11:33 UTC) #3
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/640323002/80001
6 years, 2 months ago (2014-10-09 19:13:15 UTC) #5
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/640323002/80001
6 years, 2 months ago (2014-10-09 19:29:46 UTC) #8
commit-bot: I haz the power
Committed patchset #3 (id:80001) as 5c481666c9678f43e039ad605457be3854cf8de3
6 years, 2 months ago (2014-10-09 19:30:14 UTC) #9
robertphillips
A revert of this CL (patchset #3 id:80001) has been created in https://codereview.chromium.org/643673004/ by robertphillips@google.com. ...
6 years, 2 months ago (2014-10-09 19:45:57 UTC) #10
robertphillips
PTAL. This uses a different technique and doesn't conflate locking in the resource cache with ...
6 years, 2 months ago (2014-10-10 17:44:35 UTC) #11
jvanverth1
lgtm + comment https://codereview.chromium.org/640323002/diff/300001/src/gpu/GrLayerCache.cpp File src/gpu/GrLayerCache.cpp (right): https://codereview.chromium.org/640323002/diff/300001/src/gpu/GrLayerCache.cpp#newcode47 src/gpu/GrLayerCache.cpp:47: // but not used. This comment ...
6 years, 2 months ago (2014-10-10 18:21:44 UTC) #12
robertphillips
https://codereview.chromium.org/640323002/diff/300001/src/gpu/GrLayerCache.cpp File src/gpu/GrLayerCache.cpp (right): https://codereview.chromium.org/640323002/diff/300001/src/gpu/GrLayerCache.cpp#newcode47 src/gpu/GrLayerCache.cpp:47: // but not used. On 2014/10/10 18:21:44, jvanverth1 wrote: ...
6 years, 2 months ago (2014-10-10 18:37:43 UTC) #13
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/640323002/350001
6 years, 2 months ago (2014-10-10 18:38:19 UTC) #15
commit-bot: I haz the power
6 years, 2 months ago (2014-10-10 18:38:55 UTC) #16
Message was sent while issue was closed.
Committed patchset #8 (id:350001) as 7bb9ed756e8663afe68e1a5fc680d57f83a31fea

Powered by Google App Engine
This is Rietveld 408576698