loop: signal when queue is full

When our queue is full, signal the wakeup event to make sure the thread
will wake up and try to clear the queue before we go to sleep.
This commit is contained in:
Wim Taymans 2024-07-20 14:03:20 +02:00
parent 77147c9cd7
commit b3688b163d

View file

@ -338,6 +338,7 @@ xrun:
spa_log_warn(impl->log, "%p: queue full %d, need %zd (%d suppressed)", spa_log_warn(impl->log, "%p: queue full %d, need %zd (%d suppressed)",
queue, avail, need, suppressed); queue, avail, need, suppressed);
} }
loop_signal_event(impl, impl->wakeup);
if (impl->retry_timeout == 0) if (impl->retry_timeout == 0)
return -EPIPE; return -EPIPE;
usleep(impl->retry_timeout); usleep(impl->retry_timeout);