Camera: Miscellaneous fixes in QDataCallback and binder death scenarios.
This is a squash of following changes:
Change-ID Subject
------------------------------------------------------------------------------
1) I6fc5fa6e01c002bc46be058fcd977be14cae0270 CameraService: Fix deadlock in binder death cleanup
2) I7239f6eb6a9dec67393e11b83d0ef6c986215940 Camera: CameraHardwareInterface: Releasing mHIDLMemoryMapLock in QdataCallback
3) I3fbe4ad836c2abbd512e3728cf49f9424b726ba0 Camera:CameraService: Added lock on mHIDLMemPoolId in QDataCallback
CRs-Fixed: 2246547
CameraService: Fix deadlock in binder death cleanup
Issue:
In the event of a binder death, there is a chance of deadlock
due to recursive lock acquisition in the death handling sequence.
Fix:
Clear evicted client list before acquiring service lock.
Change-Id: I6fc5fa6e01c002bc46be058fcd977be14cae0270
Camera: CameraHardwareInterface: Releasing mHIDLMemoryMapLock in QdataCallback
Issue: Camera is getting stuck due to mHIDLMemoryMapLock when called for
QDataCallback then unregister memory from HAL.
Solution: Releasing mHIDLMemoryMapLock after reading mHIDLMemoryMap variable
Change-Id: I7239f6eb6a9dec67393e11b83d0ef6c986215940
Camera:CameraService: Added lock on mHIDLMemPoolId in QDataCallback..
securing mHIDLMemPoolId (unordered_map variable) from multithreading.
Change-Id: I3fbe4ad836c2abbd512e3728cf49f9424b726ba0
Loading
Please register or sign in to comment