Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 06074d88 authored by Steven Moreland's avatar Steven Moreland
Browse files

Revert "Optimize BpBinder struct size."

This reverts commit 76c0aa44.

Reason for revert: breaks some tests b/150837217 - will investigate why later

Change-Id: I7fe4c567a4b46d02bb31c6442e969b33b6237513
parent 76c0aa44
Loading
Loading
Loading
Loading
+7 −7
Original line number Original line Diff line number Diff line
@@ -139,10 +139,10 @@ BpBinder* BpBinder::create(int32_t handle) {
BpBinder::BpBinder(int32_t handle, int32_t trackedUid)
BpBinder::BpBinder(int32_t handle, int32_t trackedUid)
    : mHandle(handle)
    : mHandle(handle)
    , mStability(0)
    , mStability(0)
    , mTrackedUid(trackedUid)
    , mAlive(1)
    , mAlive(true)
    , mObitsSent(0)
    , mObitsSent(false)
    , mObituaries(nullptr)
    , mObituaries(nullptr)
    , mTrackedUid(trackedUid)
{
{
    ALOGV("Creating BpBinder %p handle %d\n", this, mHandle);
    ALOGV("Creating BpBinder %p handle %d\n", this, mHandle);


@@ -185,7 +185,7 @@ const String16& BpBinder::getInterfaceDescriptor() const


bool BpBinder::isBinderAlive() const
bool BpBinder::isBinderAlive() const
{
{
    return mAlive;
    return mAlive != 0;
}
}


status_t BpBinder::pingBinder()
status_t BpBinder::pingBinder()
@@ -236,7 +236,7 @@ status_t BpBinder::transact(


        status_t status = IPCThreadState::self()->transact(
        status_t status = IPCThreadState::self()->transact(
            mHandle, code, data, reply, flags);
            mHandle, code, data, reply, flags);
        if (status == DEAD_OBJECT) mAlive = false;
        if (status == DEAD_OBJECT) mAlive = 0;


        return status;
        return status;
    }
    }
@@ -320,7 +320,7 @@ void BpBinder::sendObituary()
    ALOGV("Sending obituary for proxy %p handle %d, mObitsSent=%s\n",
    ALOGV("Sending obituary for proxy %p handle %d, mObitsSent=%s\n",
        this, mHandle, mObitsSent ? "true" : "false");
        this, mHandle, mObitsSent ? "true" : "false");


    mAlive = false;
    mAlive = 0;
    if (mObitsSent) return;
    if (mObitsSent) return;


    mLock.lock();
    mLock.lock();
@@ -332,7 +332,7 @@ void BpBinder::sendObituary()
        self->flushCommands();
        self->flushCommands();
        mObituaries = nullptr;
        mObituaries = nullptr;
    }
    }
    mObitsSent = true;
    mObitsSent = 1;
    mLock.unlock();
    mLock.unlock();


    ALOGV("Reporting death of proxy %p for %zu recipients\n",
    ALOGV("Reporting death of proxy %p for %zu recipients\n",
+4 −3
Original line number Original line Diff line number Diff line
@@ -133,12 +133,13 @@ private:
            bool                isDescriptorCached() const;
            bool                isDescriptorCached() const;


    mutable Mutex               mLock;
    mutable Mutex               mLock;
            int32_t             mTrackedUid;
            volatile int32_t    mAlive;
            volatile bool       mAlive;
            volatile int32_t    mObitsSent;
            volatile bool       mObitsSent;
            Vector<Obituary>*   mObituaries;
            Vector<Obituary>*   mObituaries;
            ObjectManager       mObjects;
            ObjectManager       mObjects;
            Parcel*             mConstantData;
    mutable String16            mDescriptorCache;
    mutable String16            mDescriptorCache;
            int32_t             mTrackedUid;


    static Mutex                                sTrackingLock;
    static Mutex                                sTrackingLock;
    static std::unordered_map<int32_t,uint32_t> sTrackingMap;
    static std::unordered_map<int32_t,uint32_t> sTrackingMap;