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