camera: Expose aux cameras in third party apps#2
Open
RahulGorai0206 wants to merge 1 commit intoSpark-Rom:sparkfrom
Open
camera: Expose aux cameras in third party apps#2RahulGorai0206 wants to merge 1 commit intoSpark-Rom:sparkfrom
RahulGorai0206 wants to merge 1 commit intoSpark-Rom:sparkfrom
Conversation
Change-Id: Iba95bf2450be20f85c1e5db81ee5d1b950d6d497 Signed-off-by: SamarV-121 <samarvispute121@pm.me>
SparkosCUST
pushed a commit
to SparkosCUST/frameworks_av
that referenced
this pull request
Dec 31, 2022
Do not hold lock when IPC call is expected from HAL. C2SurfaceSyncObj is shared lock between framework and HAL. HAL process can have only one thread to handle IPC from HAL to framework. Therefore Holding C2SurfaceSyncObj from HAL during IPC call could trigger deadlock. The exact scenario is as follows. Thread Spark-Rom#1:(HAL -> framework IPC) HIDL call onInputBuffersReleased() calls to feedInputBufferIfAvailable(). Since this is using HAL IPC thread, this will block Thread Spark-Rom#3. This is waiting for mOuput mutex which is held by Thread Spark-Rom#2. Thread Spark-Rom#2:(framework) discardBuffer() holds mOutput mutex which blocks Thread Spark-Rom#1. But this is waiting for C2SurfaceSyncObj which is held by Thread Spark-Rom#3. Thread Spark-Rom#3:(HAL) Dtor of C2BufferQueueBlockPoolData is holding C2SurfaceSyncObj, therefore this will block Spark-Rom#2. This thread is waiting for HIDL IPC thread to be free in order for 'igbp->cancel()', but HIDL IPC thread is already occupied by Thread Spark-Rom#1. Bug: 246707566 Test: atest android.media.decoder.cts.AdaptivePlaybackTest Test: atest android.media.decoder.cts.DecoderTest Change-Id: I6a9540d3b4d03806cd40bb4f89a234a6b77758a9 (cherry picked from commit d36be3a02819390431eed067e8f47262addb07a0) Merged-In: I6a9540d3b4d03806cd40bb4f89a234a6b77758a9
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Change-Id: Iba95bf2450be20f85c1e5db81ee5d1b950d6d497
Signed-off-by: SamarV-121 samarvispute121@pm.me