The Advanced Linux Sound Architecture (ALSA) - library
Find a file
Takashi Iwai 8495f42feb abort snd_pcm_dmix_drain when state is SND_PCM_STATE_XRU
From: Sascha Sommer <saschasommer@freenet.de>

this is a fix for bug 0001559.
Unlike my first guesses the real problem is not in the kernel driver but in
alsa-lib. Whenever the current dmix status is xrun and snd_pcm_dmix_drain
gets called the process will hang forever in the poll function. The reason is
that poll gets called even though the timer already stopped.
As described in the bugtracking system this bug was not noticable with alsa
versions that used the old IOCTLS because the SNDRV_TIMER_IOCTL_STOP ioctl
never reached the timer kernel module.

Attached patch fixes this problem for alsa-lib 1.0.10 by simply calling
snd_pcm_dmix_drop when snd_pcm_dmix_drain gets called in the state
SND_PCM_STATE_XRUN.
2005-11-21 10:47:42 +00:00
alsalisp ALISP update 2003-12-23 16:42:55 +00:00
aserver Terminate long_options array 2004-09-28 17:22:33 +00:00
doc Add detailed documentation for external control plugin SDK 2005-06-13 13:19:03 +00:00
include remove SND_SEQ_CLIENT_{DUMMY,OSS} symbols 2005-11-20 14:09:45 +00:00
modules Allow separate build and source trees 2005-08-23 12:09:07 +00:00
src abort snd_pcm_dmix_drain when state is SND_PCM_STATE_XRU 2005-11-21 10:47:42 +00:00
test test/pcm.c - remove -EINTR handling (a job for alsa-lib) 2005-08-24 14:06:11 +00:00
utils Add $include/alsa to the include path 2005-05-15 14:49:11 +00:00
acinclude.m4 fixed for the recent autoconf. 2004-01-26 15:52:17 +00:00
ChangeLog * update to libtool 1.3.3 1999-07-22 12:18:42 +00:00
configure.in release 1.0.10 2005-11-15 13:44:27 +00:00
COPYING Updated GNU GPL license (address). 2001-12-30 09:22:54 +00:00
cvscompile Oops, depmod should be depcomp 2002-10-24 12:09:30 +00:00
INSTALL Add a note on FC3 2005-02-24 10:20:44 +00:00
Makefile.am moved simple mixer abstraction modules to modules/mixer/simple directory 2005-08-22 12:07:55 +00:00
MEMORY-LEAK Initial version 2003-02-04 14:56:07 +00:00
NOTES Read $LIBASOUND_DEBUG as integer 2005-04-20 14:26:49 +00:00
TODO Added snd_config_load_override(). 2002-01-09 21:28:15 +00:00