Bug 59129

Summary: [chromium] Texture manager textures don't always get unreserved
Product: WebKit Reporter: Vangelis Kokkevis <vangelis>
Component: WebCore Misc.Assignee: Vangelis Kokkevis <vangelis>
Severity: Normal CC: enne, jamesr
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: PC   
OS: OS X 10.5   
Description Flags
Patch jamesr: review+

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>