diff options
author | 2024-09-13 22:34:11 +0000 | |
---|---|---|
committer | 2024-09-13 23:37:38 +0000 | |
commit | 3118f969f488b738de1976917a0944705c209173 (patch) | |
tree | e7f0d3def33e5efe4809a92756de74ec9811b06c /services/surfaceflinger/TransactionCallbackInvoker.cpp | |
parent | ec115475e968329f8198ecc49458714229a3afff (diff) |
Add some tracing for release fences
* Fix FenceMonitor to cleanly teardown
* App-side tracing for BBQ release callbacks
* Trace future compleition in TxnCallbackInvoker
Bug: 360932099
Bug: 357762453
Flag: EXEMPT debugging
Test: builds
Test: perfetto
Change-Id: I188c04da1e249b672b428837c328568d9e7a1e66
Diffstat (limited to 'services/surfaceflinger/TransactionCallbackInvoker.cpp')
-rw-r--r-- | services/surfaceflinger/TransactionCallbackInvoker.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/services/surfaceflinger/TransactionCallbackInvoker.cpp b/services/surfaceflinger/TransactionCallbackInvoker.cpp index c6856aea75..2b20648e42 100644 --- a/services/surfaceflinger/TransactionCallbackInvoker.cpp +++ b/services/surfaceflinger/TransactionCallbackInvoker.cpp @@ -30,6 +30,7 @@ #include <binder/IInterface.h> #include <common/FlagManager.h> #include <common/trace.h> +#include <ftl/concat.h> #include <utils/RefBase.h> namespace android { @@ -129,6 +130,9 @@ status_t TransactionCallbackInvoker::addCallbackHandle(const sp<CallbackHandle>& if (FlagManager::getInstance().ce_fence_promise()) { for (auto& future : handle->previousReleaseFences) { + SFTRACE_NAME(ftl::Concat("Merging fence for layer: ", + ftl::truncated<20>(handle->name.c_str())) + .c_str()); mergeFence(handle->name.c_str(), future.get().value_or(Fence::NO_FENCE), prevFence); } } else { |