diff options
| author | 2021-05-24 19:56:04 +0000 | |
|---|---|---|
| committer | 2021-05-24 20:19:41 +0000 | |
| commit | 865150b6ce960af967ef0dddfddb93b2bdfffaa1 (patch) | |
| tree | b0262a314f376df64f12e129b5b51493313e0914 | |
| parent | c0c9f77b825cf592c4122e1bf815ab7ae31a9e11 (diff) | |
Revert "binder: race condition by parcel finalize"
Revert submission 1553275-Bug139327211_V5
Reason for revert: causing a different race condition? b/187218964
Reverted Changes:
I9345f4439:binder: race condition by parcel finalize
Ib06e38e22:binder: race condition by parcel finalize
Change-Id: Ic83ad85441d310aa272b462f8b5c46735c6378b5
| -rw-r--r-- | libs/binder/IPCThreadState.cpp | 6 | ||||
| -rw-r--r-- | libs/binder/include/binder/IPCThreadState.h | 6 | ||||
| -rw-r--r-- | libs/binder/include/binder/ParcelRef.h | 43 |
3 files changed, 0 insertions, 55 deletions
diff --git a/libs/binder/IPCThreadState.cpp b/libs/binder/IPCThreadState.cpp index e933f7ef4c..fa9f3a9749 100644 --- a/libs/binder/IPCThreadState.cpp +++ b/libs/binder/IPCThreadState.cpp @@ -641,12 +641,6 @@ void IPCThreadState::processPostWriteDerefs() mPostWriteStrongDerefs.clear(); } -void IPCThreadState::createTransactionReference(RefBase* ref) -{ - ref->incStrong(mProcess.get()); - mPostWriteStrongDerefs.push(ref); -} - void IPCThreadState::joinThreadPool(bool isMain) { LOG_THREADPOOL("**** THREAD %p (PID %d) IS JOINING THE THREAD POOL\n", (void*)pthread_self(), getpid()); diff --git a/libs/binder/include/binder/IPCThreadState.h b/libs/binder/include/binder/IPCThreadState.h index 204926d9eb..20a9f36842 100644 --- a/libs/binder/include/binder/IPCThreadState.h +++ b/libs/binder/include/binder/IPCThreadState.h @@ -192,12 +192,6 @@ public: // This constant needs to be kept in sync with Binder.UNSET_WORKSOURCE from the Java // side. static const int32_t kUnsetWorkSource = -1; - - // Create a temp reference until commands in queue flushed to driver - // Internal only. - // @internal - void createTransactionReference(RefBase* ref); - private: IPCThreadState(); ~IPCThreadState(); diff --git a/libs/binder/include/binder/ParcelRef.h b/libs/binder/include/binder/ParcelRef.h deleted file mode 100644 index 497da2d215..0000000000 --- a/libs/binder/include/binder/ParcelRef.h +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (C) 2020 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#pragma once - - -#include <binder/Parcel.h> -#include <utils/RefBase.h> - -// --------------------------------------------------------------------------- -namespace android { - -/** - * internal use only - * @internal - */ -class ParcelRef : public Parcel, public RefBase -{ -public: - static sp<ParcelRef> create() { - return new ParcelRef(); - } - -private: - ParcelRef() = default; -}; - -} // namespace android - -// ---------------------------------------------------------------------------
\ No newline at end of file |