From 06074d8846fdf2180ed2b2b7a23226e3ba364720 Mon Sep 17 00:00:00 2001 From: Steven Moreland Date: Thu, 5 Mar 2020 23:16:51 +0000 Subject: Revert "Optimize BpBinder struct size." This reverts commit 76c0aa44bb1aeed3e611bc2ed9480b7bfd2439fd. Reason for revert: breaks some tests b/150837217 - will investigate why later Change-Id: I7fe4c567a4b46d02bb31c6442e969b33b6237513 --- libs/binder/BpBinder.cpp | 14 +++++++------- libs/binder/include/binder/BpBinder.h | 7 ++++--- 2 files changed, 11 insertions(+), 10 deletions(-) diff --git a/libs/binder/BpBinder.cpp b/libs/binder/BpBinder.cpp index cadf15ef28..d2b9b8f018 100644 --- a/libs/binder/BpBinder.cpp +++ b/libs/binder/BpBinder.cpp @@ -139,10 +139,10 @@ BpBinder* BpBinder::create(int32_t handle) { BpBinder::BpBinder(int32_t handle, int32_t trackedUid) : mHandle(handle) , mStability(0) - , mTrackedUid(trackedUid) - , mAlive(true) - , mObitsSent(false) + , mAlive(1) + , mObitsSent(0) , mObituaries(nullptr) + , mTrackedUid(trackedUid) { ALOGV("Creating BpBinder %p handle %d\n", this, mHandle); @@ -185,7 +185,7 @@ const String16& BpBinder::getInterfaceDescriptor() const bool BpBinder::isBinderAlive() const { - return mAlive; + return mAlive != 0; } status_t BpBinder::pingBinder() @@ -236,7 +236,7 @@ status_t BpBinder::transact( status_t status = IPCThreadState::self()->transact( mHandle, code, data, reply, flags); - if (status == DEAD_OBJECT) mAlive = false; + if (status == DEAD_OBJECT) mAlive = 0; return status; } @@ -320,7 +320,7 @@ void BpBinder::sendObituary() ALOGV("Sending obituary for proxy %p handle %d, mObitsSent=%s\n", this, mHandle, mObitsSent ? "true" : "false"); - mAlive = false; + mAlive = 0; if (mObitsSent) return; mLock.lock(); @@ -332,7 +332,7 @@ void BpBinder::sendObituary() self->flushCommands(); mObituaries = nullptr; } - mObitsSent = true; + mObitsSent = 1; mLock.unlock(); ALOGV("Reporting death of proxy %p for %zu recipients\n", diff --git a/libs/binder/include/binder/BpBinder.h b/libs/binder/include/binder/BpBinder.h index 9e8102b25a..8e871b8214 100644 --- a/libs/binder/include/binder/BpBinder.h +++ b/libs/binder/include/binder/BpBinder.h @@ -133,12 +133,13 @@ private: bool isDescriptorCached() const; mutable Mutex mLock; - int32_t mTrackedUid; - volatile bool mAlive; - volatile bool mObitsSent; + volatile int32_t mAlive; + volatile int32_t mObitsSent; Vector* mObituaries; ObjectManager mObjects; + Parcel* mConstantData; mutable String16 mDescriptorCache; + int32_t mTrackedUid; static Mutex sTrackingLock; static std::unordered_map sTrackingMap; -- cgit v1.2.3-59-g8ed1b