Skip to content
Commit c106d9f9 authored by Jean-Michel Trivi's avatar Jean-Michel Trivi
Browse files

AudioService: fix deallock setBluetoothScoOn vs setMode

In AudioService:
setBluetoothScoOn()
  > setBluetoothScoOnInt()
     > synchronized(mSettingsLock)
     > muteRingerModeStreams()
	> synchronized (VolumeStreamState.class)
vs
setMode()
  > setModeInt()
     > synchronized (mSettingsLock)
        > synchronized (VolumeStreamState.class)

The issue comes from setBluetoothScoOnInt() releasing the lock
  on mSettingsLock before calling muteRingerModeStreams(). This
  breaks the expected lock ordering in AudioService, where
  mSettingsLock must be locked before VolumeStreamState.class.

Bug: 109746821
Test: see bug
Change-Id: I853ca60781efc506626b6345f27da701655ac359
parent c6e4acc2
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment