msm: eva: Handling mutex lock in case of failure
Returning false if mutex lock is not successful in cvp_fence-wait function instead of sleep. Change-Id: Ieddfb6e16c72d571646a39a63c073a1b9912b3bc Signed-off-by: VIVEK VARDHAN JOSHI <quic_vivekvar@quicinc.com>
Cette révision appartient à :
@@ -272,7 +272,8 @@ static bool cvp_fence_wait(struct cvp_fence_queue *q,
|
||||
return false;
|
||||
|
||||
*fence = NULL;
|
||||
mutex_lock(&q->lock);
|
||||
if (!mutex_trylock(&q->lock))
|
||||
return false;
|
||||
*state = q->state;
|
||||
if (*state != QUEUE_START) {
|
||||
mutex_unlock(&q->lock);
|
||||
@@ -422,8 +423,10 @@ wait:
|
||||
if (state != QUEUE_START)
|
||||
goto exit;
|
||||
|
||||
if (!f)
|
||||
if (!f) {
|
||||
usleep_range(100, 200);
|
||||
goto wait;
|
||||
}
|
||||
|
||||
pkt = f->pkt;
|
||||
synx = (u32 *)f->synx;
|
||||
|
Référencer dans un nouveau ticket
Bloquer un utilisateur