rocr: Fix Potential Deadlock

Because eventDescrp->mutex is a non-recursive lock attempting to
acquire the lock with pthread_mutex_lock can cause the system to hang
indefinitely if the lock was already previously aquired with the
preceeding call to pthread_mutex_trylock.

Signed-off-by: Sunday Clement <Sunday.Clement@amd.com>
This commit is contained in:
Sunday Clement
2025-05-29 14:52:48 -04:00
committed by Yat Sin, David
parent f6c8cbd293
commit a97b7df4b9
@@ -577,7 +577,10 @@ int WaitForOsEvent(EventHandle event, unsigned int milli_seconds) {
}
int ret_code = 0;
pthread_mutex_lock(&eventDescrp->mutex);
if(milli_seconds != 0) {
pthread_mutex_lock(&eventDescrp->mutex);
}
if (!eventDescrp->state) {
if (milli_seconds == 0) {
ret_code = 1;