From 947d34ecad84bdaf496748eeb9f6e35b33deb339 Mon Sep 17 00:00:00 2001 From: Marissa Wall Date: Fri, 29 Mar 2019 14:03:53 -0700 Subject: Change slot generation for BufferState BufferState layers now do slot generation with buffer death considered appropriately. When a buffer dies, the slot will be pushed onto a stack of available slots to be reused at the next opportunity. This should mimic BufferQueue slot behavior and prevent Composer Resources from growing too large. Test: build, boot, manual Bug: 129351223 Change-Id: Icef9592593cacb0b5c6b12f6679fc2c4dabdcd19 --- libs/gui/SurfaceComposerClient.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'libs/gui/SurfaceComposerClient.cpp') diff --git a/libs/gui/SurfaceComposerClient.cpp b/libs/gui/SurfaceComposerClient.cpp index 611da89ef6..a19be12d61 100644 --- a/libs/gui/SurfaceComposerClient.cpp +++ b/libs/gui/SurfaceComposerClient.cpp @@ -387,9 +387,9 @@ void SurfaceComposerClient::doDropReferenceTransaction(const sp& handle void SurfaceComposerClient::doUncacheBufferTransaction(uint64_t cacheId) { sp sf(ComposerService::getComposerService()); - cached_buffer_t uncacheBuffer; + client_cache_t uncacheBuffer; uncacheBuffer.token = BufferCache::getInstance().getToken(); - uncacheBuffer.cacheId = cacheId; + uncacheBuffer.id = cacheId; sf->setTransactionState({}, {}, 0, nullptr, {}, -1, uncacheBuffer, {}); } @@ -422,7 +422,7 @@ void SurfaceComposerClient::Transaction::cacheBuffers() { } s->what |= layer_state_t::eCachedBufferChanged; s->cachedBuffer.token = BufferCache::getInstance().getToken(); - s->cachedBuffer.cacheId = cacheId; + s->cachedBuffer.id = cacheId; // If we have more buffers than the size of the cache, we should stop caching so we don't // evict other buffers in this transaction -- cgit v1.2.3-59-g8ed1b