[alsa-devel] snd_pcm_drop causing lockup with DMix

John Lindgren john.lindgren at tds.net
Tue Mar 2 00:52:32 CET 2010


Still no difference.

I also noticed that with or without the patch, Audacious will
occasionally not hang up, and instead the snd_pcm_writei call that is
interrupted will return -EBADFD.  I haven't seen the test case do the
same.

On Mon, 2010-03-01 at 07:53 +0100, Jaroslav Kysela wrote:
> And this one?
> 
> diff --git a/src/pcm/pcm_direct.c b/src/pcm/pcm_direct.c
> index d9e596e..ae32fab 100644
> --- a/src/pcm/pcm_direct.c
> +++ b/src/pcm/pcm_direct.c
> @@ -540,7 +540,6 @@ void snd_pcm_direct_clear_timer_queue(snd_pcm_direct_t *dmix)
>   int snd_pcm_direct_timer_stop(snd_pcm_direct_t *dmix)
>   {
>   	snd_timer_stop(dmix->timer);
> -	snd_pcm_direct_clear_timer_queue(dmix);
>   	return 0;
>   }
> 
> @@ -1274,6 +1273,7 @@ int snd_pcm_direct_set_timer_params(snd_pcm_direct_t *dmix)
>   	snd_timer_params_set_ticks(params, 1);
>   	if (dmix->tread) {
>   		filter = (1<<SND_TIMER_EVENT_TICK) |
> +			 (1<<SND_TIMER_EVENT_STOP) |
>   			 dmix->timer_event_suspend |
>   			 dmix->timer_event_resume;
>   		snd_timer_params_set_filter(params, filter);
> 
> -----
> Jaroslav Kysela <perex at perex.cz>
> Linux Kernel Sound Maintainer
> ALSA Project, Red Hat, Inc.



More information about the Alsa-devel mailing list