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

Commit c865e256 authored by Steven Moreland's avatar Steven Moreland Committed by Gerrit Code Review
Browse files

Merge "Revert "Optimize BpBinder struct size.""

parents 11f9bbf4 06074d88
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;