lv2: Wait for rescheduling before confirming ETIMEOUT

This commit is contained in:
Eladash 2019-08-25 10:05:05 +03:00 committed by Ivan
parent 35a3bed91a
commit a921fe3351
7 changed files with 24 additions and 0 deletions

View file

@ -325,6 +325,9 @@ error_code _sys_lwcond_queue_wait(ppu_thread& ppu, u32 lwcond_id, u32 lwmutex_id
{
if (lv2_obj::wait_timeout(timeout, &ppu))
{
// Wait for rescheduling
ppu.check_state();
std::lock_guard lock(cond->mutex);
if (!cond->unqueue(cond->sq, &ppu))