Bug 59129 - [chromium] Texture manager textures don't always get unreserved
Summary: [chromium] Texture manager textures don't always get unreserved
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebCore Misc. (show other bugs)
Version: 528+ (Nightly build)
Hardware: PC OS X 10.5
: P2 Normal
Assignee: Vangelis Kokkevis
Depends on:
Reported: 2011-04-21 12:22 PDT by Vangelis Kokkevis
Modified: 2011-04-21 18:05 PDT (History)
2 users (show)

See Also:

Patch (16.85 KB, patch)
2011-04-21 12:27 PDT, Vangelis Kokkevis
jamesr: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Vangelis Kokkevis 2011-04-21 12:22:13 PDT
Currently layers reserve textures in the texture manager when their contents are painted and unreserve after the layer has been drawn.  Since the compositor can skip layers at draw time (e.g. when the layer is outside the clip rect) some textures are left reserved.  Over time they add to the memory (VRAM) bloat.

The debug chromium builds currently assert when a texture is reserved twice (which is an indication that the texture was not unreserved after the previous draw).

An easy repro case for the assert is loading this page:

Comment 1 Vangelis Kokkevis 2011-04-21 12:27:52 PDT
Created attachment 90577 [details]
Comment 2 James Robinson 2011-04-21 12:58:37 PDT
Comment on attachment 90577 [details]

Looks good.  I'm pretty sure this will conflict with enne's upload patch.
Comment 3 Vangelis Kokkevis 2011-04-21 18:05:58 PDT
Committed r84582: <http://trac.webkit.org/changeset/84582>