Merge "Remove the extra buffer allocation from hwui" into sc-dev

This commit is contained in:
TreeHugger Robot
2021-06-18 17:21:39 +00:00
committed by Android (Google) Code Review
3 changed files with 0 additions and 11 deletions

View File

@@ -174,16 +174,12 @@ void CanvasContext::setSurface(ANativeWindow* window, bool enableTimeout) {
ATRACE_CALL(); ATRACE_CALL();
if (window) { if (window) {
int extraBuffers = 0;
native_window_get_extra_buffer_count(window, &extraBuffers);
mNativeSurface = std::make_unique<ReliableSurface>(window); mNativeSurface = std::make_unique<ReliableSurface>(window);
mNativeSurface->init(); mNativeSurface->init();
if (enableTimeout) { if (enableTimeout) {
// TODO: Fix error handling & re-shorten timeout // TODO: Fix error handling & re-shorten timeout
ANativeWindow_setDequeueTimeout(window, 4000_ms); ANativeWindow_setDequeueTimeout(window, 4000_ms);
} }
mNativeSurface->setExtraBufferCount(extraBuffers);
} else { } else {
mNativeSurface = nullptr; mNativeSurface = nullptr;
} }

View File

@@ -278,7 +278,6 @@ int ReliableSurface::hook_query(const ANativeWindow *window, ANativeWindow_query
int result = query(window, what, value); int result = query(window, what, value);
if (what == ANATIVEWINDOW_QUERY_MIN_UNDEQUEUED_BUFFERS && result == OK) { if (what == ANATIVEWINDOW_QUERY_MIN_UNDEQUEUED_BUFFERS && result == OK) {
std::lock_guard _lock{rs->mMutex}; std::lock_guard _lock{rs->mMutex};
*value += rs->mExtraBuffers;
rs->mExpectedBufferCount = *value + 2; rs->mExpectedBufferCount = *value + 2;
} }
return result; return result;

View File

@@ -51,11 +51,6 @@ public:
return ret; return ret;
} }
void setExtraBufferCount(size_t extraBuffers) {
std::lock_guard _lock{mMutex};
mExtraBuffers = extraBuffers;
}
bool didSetExtraBuffers() const { bool didSetExtraBuffers() const {
std::lock_guard _lock{mMutex}; std::lock_guard _lock{mMutex};
return mDidSetExtraBuffers; return mDidSetExtraBuffers;
@@ -73,7 +68,6 @@ private:
base::unique_fd mReservedFenceFd; base::unique_fd mReservedFenceFd;
bool mHasDequeuedBuffer = false; bool mHasDequeuedBuffer = false;
int mBufferQueueState = OK; int mBufferQueueState = OK;
size_t mExtraBuffers = 0;
size_t mExpectedBufferCount = 0; size_t mExpectedBufferCount = 0;
bool mDidSetExtraBuffers = false; bool mDidSetExtraBuffers = false;