Refactor the VDM locks
Basically never call outside the class while holding a lock
VirtualDeviceManagerService:
- utilize the virtual device snapshot in more places
VirtualDeviceImpl:
- use a separate lock for mIntentInterceptors - holding mVirtualDeviceLock is actually completely unnecessary there
- use a separate lock for PowerManager and related fields to avoid a deadlock (PowerGroup's constructor actually calls VDM)
- This allows to call PowerManager without mVirtualDeviceLock
Change-Id: I8ba16564053779e5cbe46bb89658fe55ab28777a
Fix: 394534258
Test: presubmit
Flag: EXEMPT bugfix
2 files changed