Add Consumer name in Surface::dequeueBuffer trace
Test: name is in trace
Change-Id: Ib42a562dcbffda41ac942e782d03718056af2e91
diff --git a/libs/gui/Surface.cpp b/libs/gui/Surface.cpp
index e8aac2f..fef83ea 100644
--- a/libs/gui/Surface.cpp
+++ b/libs/gui/Surface.cpp
@@ -30,9 +30,10 @@
#include <android/gui/DisplayStatInfo.h>
#include <android/native_window.h>
+#include <gui/TraceUtils.h>
#include <utils/Log.h>
-#include <utils/Trace.h>
#include <utils/NativeHandle.h>
+#include <utils/Trace.h>
#include <ui/DynamicDisplayInfo.h>
#include <ui/Fence.h>
@@ -637,7 +638,7 @@
}
int Surface::dequeueBuffer(android_native_buffer_t** buffer, int* fenceFd) {
- ATRACE_CALL();
+ ATRACE_FORMAT("dequeueBuffer - %s", getDebugName());
ALOGV("Surface::dequeueBuffer");
IGraphicBufferProducer::DequeueBufferInput dqInput;
@@ -2651,4 +2652,12 @@
mSurfaceControlHandle = nullptr;
}
+const char* Surface::getDebugName() {
+ std::unique_lock lock{mNameMutex};
+ if (mName.empty()) {
+ mName = getConsumerName();
+ }
+ return mName.c_str();
+}
+
}; // namespace android