diff options
author | 2024-10-04 14:14:07 +0000 | |
---|---|---|
committer | 2024-10-15 22:42:04 +0000 | |
commit | a6676ba72af4c4608ccdb9e71d7e31467e912f5d (patch) | |
tree | 23dd088f05a6af38721d47c2255e42d3363bceb4 /libs/binder/BackendUnifiedServiceManager.cpp | |
parent | 4811398ed12aff7cc9f0d3a78e44a6796a860d23 (diff) |
Add Tracing for Binder Caching
Test: perfetto -c <perfetto config>
Bug: 333854840
Change-Id: Iffb1e00f94722f60c85305e0596ce58b0df5a6da
Diffstat (limited to 'libs/binder/BackendUnifiedServiceManager.cpp')
-rw-r--r-- | libs/binder/BackendUnifiedServiceManager.cpp | 23 |
1 files changed, 21 insertions, 2 deletions
diff --git a/libs/binder/BackendUnifiedServiceManager.cpp b/libs/binder/BackendUnifiedServiceManager.cpp index 52b485a6f6..37aaaf388e 100644 --- a/libs/binder/BackendUnifiedServiceManager.cpp +++ b/libs/binder/BackendUnifiedServiceManager.cpp @@ -114,11 +114,30 @@ binder::Status BackendUnifiedServiceManager::updateCache(const std::string& serv if (!kUseCache) { return binder::Status::ok(); } + std::string traceStr; + if (atrace_is_tag_enabled(ATRACE_TAG_AIDL)) { + traceStr = "BinderCacheWithInvalidation::updateCache : " + serviceName; + } + binder::ScopedTrace aidlTrace(ATRACE_TAG_AIDL, traceStr.c_str()); + if (service.getTag() == os::Service::Tag::binder) { sp<IBinder> binder = service.get<os::Service::Tag::binder>(); - if (binder && mCacheForGetService->isClientSideCachingEnabled(serviceName) && - binder->isBinderAlive()) { + if (!binder) { + binder::ScopedTrace + aidlTrace(ATRACE_TAG_AIDL, + "BinderCacheWithInvalidation::updateCache failed: binder_null"); + } else if (!binder->isBinderAlive()) { + binder::ScopedTrace aidlTrace(ATRACE_TAG_AIDL, + "BinderCacheWithInvalidation::updateCache failed: " + "isBinderAlive_false"); + } else if (mCacheForGetService->isClientSideCachingEnabled(serviceName)) { + binder::ScopedTrace aidlTrace(ATRACE_TAG_AIDL, + "BinderCacheWithInvalidation::updateCache successful"); return mCacheForGetService->setItem(serviceName, binder); + } else { + binder::ScopedTrace aidlTrace(ATRACE_TAG_AIDL, + "BinderCacheWithInvalidation::updateCache failed: " + "caching_not_enabled"); } } return binder::Status::ok(); |