summaryrefslogtreecommitdiff
path: root/libs/gui/DisplayLuts.cpp
diff options
context:
space:
mode:
author Dominik Laskowski <domlaskowski@google.com> 2024-07-15 08:24:49 -0400
committer Android Build Coastguard Worker <android-build-coastguard-worker@google.com> 2024-07-23 00:14:28 +0000
commita515fd50aea0610749260045263ca6f6a03d9b86 (patch)
tree6f9b8ecae2f4d8a070e75366398bf3ccb9c9a1c4 /libs/gui/DisplayLuts.cpp
parentf848348555c21dc681b8bc6e5c4091f294497af6 (diff)
SF: Restore mStateLock mutex for modesetting
In order to fix a deadlock during display hotplug, the modesetting mutex was changed from mStateLock to a granular DisplayModeController lock, in the following CLs: I30ec756f134d2d67a70ac8797008dc792eac035e Iaae02d95e175e55f52f65da1481b64f1f533a04c (reverted) This exposed a data race leading to a crash, which, unlike the deadlock, affects all devices with refresh rate switching. The race will be fixed by: If6141d2928643e82b3251b321e18c300cd8c201c (WIP) As a stopgap until then, restore mStateLock (on top of the DMC lock) on the main thread to fix the race, but reintroduce the deadlock. The lock was already restored on the idle timer thread by the reverted CL above. Fixes: 348827779 Flag: com.android.graphics.surfaceflinger.flags.connected_display Test: Manual (foldable, connected display) (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:b2fc4235635f5160ed5ae35c1fbd1fcc3e45c59f) Merged-In: Ie15de10d16eefeb65289574b120d2ef4cc09d6c0 Change-Id: Ie15de10d16eefeb65289574b120d2ef4cc09d6c0
Diffstat (limited to 'libs/gui/DisplayLuts.cpp')
0 files changed, 0 insertions, 0 deletions