diff options
author | ccameron@chromium.org <ccameron@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-10-15 20:43:25 +0000 |
---|---|---|
committer | ccameron@chromium.org <ccameron@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-10-15 20:43:25 +0000 |
commit | 2c7d23f639f3d6aa1c0c840d230c9a5e1cb0ca63 (patch) | |
tree | 26e43a2eba88f008a1f53bef9c59b7dcc2fbe423 /webkit/dom_storage | |
parent | eb63da71b9cc5a06f6de8b59ce50630e094c3c2c (diff) | |
download | chromium_src-2c7d23f639f3d6aa1c0c840d230c9a5e1cb0ca63.zip chromium_src-2c7d23f639f3d6aa1c0c840d230c9a5e1cb0ca63.tar.gz chromium_src-2c7d23f639f3d6aa1c0c840d230c9a5e1cb0ca63.tar.bz2 |
Fix issue where textures currently being drawn by the impl thread can be recycled or evicted by the main thread.
Explicitly push priorities to their backings when a commit begins, and then update the presence of backings' resources in the impl tree when the trees are synchronized.
Note that in the worst case we can momentarily overshoot the texture budget by a factor of two because we keep around both the currently-drawing and the next frame.
Make the CCProxy implementations call the PTM directly instead of maintaining a bunch of wrapper functions in CCLayerTreeHost.
Make reduceMemory (called when synchronizing trees at the end of a commit) be the one true place where backings structures are deleted (they are just evicted in all other places).
Also, we can cut the PTM into a CCPrioritizedTextureManager and CCPrioritizedBackingManager where the former is a main-thread structure and the latter is an impl-thread structure. This change make the PTM follow parts of the commit flow, which will be more explicit with the separate structures.
BUG=152496
Review URL: https://chromiumcodereview.appspot.com/11079007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@161949 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit/dom_storage')
0 files changed, 0 insertions, 0 deletions