summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMidas Chien <midaschieh@google.com>2024-01-17 02:18:49 +0000
committerAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2024-01-19 21:21:47 +0000
commitd0f60a6911bd2d2a8281305e09339a30dd71c120 (patch)
tree8a1ace18b62e553bd657d7967218e2b83c26aaa9
parent8ec4720703a75a7de72a173f1073b6349c17d122 (diff)
downloadcommon-d0f60a6911bd2d2a8281305e09339a30dd71c120.tar.gz
Revert "bhwc2.1: add lock protection when checking BTS capability for layer"
This reverts commit 7635fd167147635d6369b214cb88c2ee8ded3276. Reason for revert: cause race condition result to composer crash Bug: 316468278 (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:8efbc15eeafbe724b34a6cc343df6d6619071650) Merged-In: I1e3a6ec4267885d628537a3bb510e7e4702286c1 Change-Id: I1e3a6ec4267885d628537a3bb510e7e4702286c1
-rw-r--r--libhwc2.1/libmaindisplay/ExynosPrimaryDisplay.cpp23
1 files changed, 9 insertions, 14 deletions
diff --git a/libhwc2.1/libmaindisplay/ExynosPrimaryDisplay.cpp b/libhwc2.1/libmaindisplay/ExynosPrimaryDisplay.cpp
index d4e9458..29ee7ef 100644
--- a/libhwc2.1/libmaindisplay/ExynosPrimaryDisplay.cpp
+++ b/libhwc2.1/libmaindisplay/ExynosPrimaryDisplay.cpp
@@ -1129,23 +1129,18 @@ void ExynosPrimaryDisplay::setDisplayNeedHandleIdleExit(const bool needed, const
}
void ExynosPrimaryDisplay::handleDisplayIdleEnter(const uint32_t idleTeRefreshRate) {
- {
- Mutex::Autolock lock(mDisplayMutex);
- uint32_t btsRefreshRate = getBtsRefreshRate();
- if (idleTeRefreshRate <= btsRefreshRate) {
- return;
- }
+ Mutex::Autolock lock(mDisplayMutex);
+ uint32_t btsRefreshRate = getBtsRefreshRate();
+ if (idleTeRefreshRate <= btsRefreshRate) {
+ return;
}
bool needed = false;
- {
- Mutex::Autolock lock(mDRMutex);
- for (size_t i = 0; i < mLayers.size(); i++) {
- if (mLayers[i]->mOtfMPP && mLayers[i]->mM2mMPP == nullptr &&
- !mLayers[i]->checkBtsCap(idleTeRefreshRate)) {
- needed = true;
- break;
- }
+ for (size_t i = 0; i < mLayers.size(); i++) {
+ if (mLayers[i]->mOtfMPP && mLayers[i]->mM2mMPP == nullptr &&
+ !mLayers[i]->checkBtsCap(idleTeRefreshRate)) {
+ needed = true;
+ break;
}
}