Loading include/binder/Parcel.h +2 −4 Original line number Diff line number Diff line Loading @@ -372,11 +372,9 @@ public: private: size_t mBlobAshmemSize; size_t mOpenAshmemSize; public: size_t getBlobAshmemSize() const; size_t getOpenAshmemSize() const; }; // --------------------------------------------------------------------------- Loading Loading @@ -444,9 +442,9 @@ inline TextOutput& operator<<(TextOutput& to, const Parcel& parcel) // Generic acquire and release of objects. void acquire_object(const sp<ProcessState>& proc, const flat_binder_object& obj, const void* who, size_t* outAshmemSize); const flat_binder_object& obj, const void* who); void release_object(const sp<ProcessState>& proc, const flat_binder_object& obj, const void* who, size_t* outAshmemSize); const flat_binder_object& obj, const void* who); void flatten_binder(const sp<ProcessState>& proc, const sp<IBinder>& binder, flat_binder_object* out); Loading libs/binder/Parcel.cpp +10 −28 Original line number Diff line number Diff line Loading @@ -96,7 +96,7 @@ enum { }; void acquire_object(const sp<ProcessState>& proc, const flat_binder_object& obj, const void* who, size_t* outAshmemSize) const flat_binder_object& obj, const void* who) { switch (obj.type) { case BINDER_TYPE_BINDER: Loading @@ -123,13 +123,8 @@ void acquire_object(const sp<ProcessState>& proc, return; } case BINDER_TYPE_FD: { if (obj.cookie != 0) { // If we own an ashmem fd, keep track of how much memory it refers to. int size = ashmem_get_size_region(obj.handle); if (size > 0) { *outAshmemSize += size; } } // intentionally blank -- nothing to do to acquire this, but we do // recognize it as a legitimate object type. return; } } Loading @@ -138,7 +133,7 @@ void acquire_object(const sp<ProcessState>& proc, } void release_object(const sp<ProcessState>& proc, const flat_binder_object& obj, const void* who, size_t* outAshmemSize) const flat_binder_object& obj, const void* who) { switch (obj.type) { case BINDER_TYPE_BINDER: Loading @@ -165,14 +160,7 @@ void release_object(const sp<ProcessState>& proc, return; } case BINDER_TYPE_FD: { if (obj.cookie != 0) { int size = ashmem_get_size_region(obj.handle); if (size > 0) { *outAshmemSize -= size; } close(obj.handle); } if (obj.cookie != 0) close(obj.handle); return; } } Loading Loading @@ -516,7 +504,7 @@ status_t Parcel::appendFrom(const Parcel *parcel, size_t offset, size_t len) flat_binder_object* flat = reinterpret_cast<flat_binder_object*>(mData + off); acquire_object(proc, *flat, this, &mOpenAshmemSize); acquire_object(proc, *flat, this); if (flat->type == BINDER_TYPE_FD) { // If this is a file descriptor, we need to dup it so the Loading Loading @@ -1237,7 +1225,7 @@ restart_write: // Need to write meta-data? if (nullMetaData || val.binder != 0) { mObjects[mObjectsSize] = mDataPos; acquire_object(ProcessState::self(), val, this, &mOpenAshmemSize); acquire_object(ProcessState::self(), val, this); mObjectsSize++; } Loading Loading @@ -2097,7 +2085,7 @@ void Parcel::releaseObjects() i--; const flat_binder_object* flat = reinterpret_cast<flat_binder_object*>(data+objects[i]); release_object(proc, *flat, this, &mOpenAshmemSize); release_object(proc, *flat, this); } } Loading @@ -2111,7 +2099,7 @@ void Parcel::acquireObjects() i--; const flat_binder_object* flat = reinterpret_cast<flat_binder_object*>(data+objects[i]); acquire_object(proc, *flat, this, &mOpenAshmemSize); acquire_object(proc, *flat, this); } } Loading Loading @@ -2299,7 +2287,7 @@ status_t Parcel::continueWrite(size_t desired) // will need to rescan because we may have lopped off the only FDs mFdsKnown = false; } release_object(proc, *flat, this, &mOpenAshmemSize); release_object(proc, *flat, this); } binder_size_t* objects = (binder_size_t*)realloc(mObjects, objectsSize*sizeof(binder_size_t)); Loading Loading @@ -2386,7 +2374,6 @@ void Parcel::initState() mAllowFds = true; mOwner = NULL; mBlobAshmemSize = 0; mOpenAshmemSize = 0; } void Parcel::scanForFds() const Loading @@ -2409,11 +2396,6 @@ size_t Parcel::getBlobAshmemSize() const return mBlobAshmemSize; } size_t Parcel::getOpenAshmemSize() const { return mOpenAshmemSize; } // --- Parcel::Blob --- Parcel::Blob::Blob() : Loading Loading
include/binder/Parcel.h +2 −4 Original line number Diff line number Diff line Loading @@ -372,11 +372,9 @@ public: private: size_t mBlobAshmemSize; size_t mOpenAshmemSize; public: size_t getBlobAshmemSize() const; size_t getOpenAshmemSize() const; }; // --------------------------------------------------------------------------- Loading Loading @@ -444,9 +442,9 @@ inline TextOutput& operator<<(TextOutput& to, const Parcel& parcel) // Generic acquire and release of objects. void acquire_object(const sp<ProcessState>& proc, const flat_binder_object& obj, const void* who, size_t* outAshmemSize); const flat_binder_object& obj, const void* who); void release_object(const sp<ProcessState>& proc, const flat_binder_object& obj, const void* who, size_t* outAshmemSize); const flat_binder_object& obj, const void* who); void flatten_binder(const sp<ProcessState>& proc, const sp<IBinder>& binder, flat_binder_object* out); Loading
libs/binder/Parcel.cpp +10 −28 Original line number Diff line number Diff line Loading @@ -96,7 +96,7 @@ enum { }; void acquire_object(const sp<ProcessState>& proc, const flat_binder_object& obj, const void* who, size_t* outAshmemSize) const flat_binder_object& obj, const void* who) { switch (obj.type) { case BINDER_TYPE_BINDER: Loading @@ -123,13 +123,8 @@ void acquire_object(const sp<ProcessState>& proc, return; } case BINDER_TYPE_FD: { if (obj.cookie != 0) { // If we own an ashmem fd, keep track of how much memory it refers to. int size = ashmem_get_size_region(obj.handle); if (size > 0) { *outAshmemSize += size; } } // intentionally blank -- nothing to do to acquire this, but we do // recognize it as a legitimate object type. return; } } Loading @@ -138,7 +133,7 @@ void acquire_object(const sp<ProcessState>& proc, } void release_object(const sp<ProcessState>& proc, const flat_binder_object& obj, const void* who, size_t* outAshmemSize) const flat_binder_object& obj, const void* who) { switch (obj.type) { case BINDER_TYPE_BINDER: Loading @@ -165,14 +160,7 @@ void release_object(const sp<ProcessState>& proc, return; } case BINDER_TYPE_FD: { if (obj.cookie != 0) { int size = ashmem_get_size_region(obj.handle); if (size > 0) { *outAshmemSize -= size; } close(obj.handle); } if (obj.cookie != 0) close(obj.handle); return; } } Loading Loading @@ -516,7 +504,7 @@ status_t Parcel::appendFrom(const Parcel *parcel, size_t offset, size_t len) flat_binder_object* flat = reinterpret_cast<flat_binder_object*>(mData + off); acquire_object(proc, *flat, this, &mOpenAshmemSize); acquire_object(proc, *flat, this); if (flat->type == BINDER_TYPE_FD) { // If this is a file descriptor, we need to dup it so the Loading Loading @@ -1237,7 +1225,7 @@ restart_write: // Need to write meta-data? if (nullMetaData || val.binder != 0) { mObjects[mObjectsSize] = mDataPos; acquire_object(ProcessState::self(), val, this, &mOpenAshmemSize); acquire_object(ProcessState::self(), val, this); mObjectsSize++; } Loading Loading @@ -2097,7 +2085,7 @@ void Parcel::releaseObjects() i--; const flat_binder_object* flat = reinterpret_cast<flat_binder_object*>(data+objects[i]); release_object(proc, *flat, this, &mOpenAshmemSize); release_object(proc, *flat, this); } } Loading @@ -2111,7 +2099,7 @@ void Parcel::acquireObjects() i--; const flat_binder_object* flat = reinterpret_cast<flat_binder_object*>(data+objects[i]); acquire_object(proc, *flat, this, &mOpenAshmemSize); acquire_object(proc, *flat, this); } } Loading Loading @@ -2299,7 +2287,7 @@ status_t Parcel::continueWrite(size_t desired) // will need to rescan because we may have lopped off the only FDs mFdsKnown = false; } release_object(proc, *flat, this, &mOpenAshmemSize); release_object(proc, *flat, this); } binder_size_t* objects = (binder_size_t*)realloc(mObjects, objectsSize*sizeof(binder_size_t)); Loading Loading @@ -2386,7 +2374,6 @@ void Parcel::initState() mAllowFds = true; mOwner = NULL; mBlobAshmemSize = 0; mOpenAshmemSize = 0; } void Parcel::scanForFds() const Loading @@ -2409,11 +2396,6 @@ size_t Parcel::getBlobAshmemSize() const return mBlobAshmemSize; } size_t Parcel::getOpenAshmemSize() const { return mOpenAshmemSize; } // --- Parcel::Blob --- Parcel::Blob::Blob() : Loading