Skip to content

alsasink: Fix stalls on exit while operating a broken audio card

While testing critical failures on our HW, we tested what could happen if we unplug some internal component of our audio card. As a result, playback didn't work anymore (expected) and ALSA driver ended up returning EGAIN, which seems relatively fair. The driver cannot know if things will recover or not. Though, EGAIN situation that does not resolves itself before the applicaiton wants to stop the pipeline causes a deadlock in alsasink.

This MR Fixes this by dropping the lock in that specific situation so that the application can avoid deadlocks when shutting down.

Merge request reports