[alsa-devel] alsa-utils aplay/arecord can't be interrupted when streaming is not active

jiwang jiada_wang at mentor.com
Wed Apr 16 09:54:30 CEST 2014

Hi All

With latest alsa-utils, I am facing problem to interrupt 
when the streaming is not active (no data can be written to or read from 
further more, if I start aplay/arecord with "-N" nonblocking option,
then aplay/arecord can never exit, unless I do a system reset

I found if I revert the following patch

/commit 1d0042d7e948815f8015c62bc53143eed3b83206//
//Author: Jaroslav Kysela <perex at perex.cz>//
//Date:   Mon Apr 8 13:30:54 2013 +0200//
//    aplay/arecord: change the interrupt handling using snd_pcm_abort()//
//    It is required (exclude the fatal SIGABRT) to call snd_pcm_close() 
//    the end of work (outside of the interrupt handler). Use new 
//    function to inform alsa-lib to not ignore EINTR and move the 
//    variable to the global scope to be checked in the i/o loops.//
//    Signed-off-by: Jaroslav Kysela <perex at perex.cz>//

then aplay/arecord can be interrupted correctly

Is it a defect in aplay.c or did I miss something?


More information about the Alsa-devel mailing list