Re: [PATCH] ALSA: pcm: Fix avail to return error if stream is suspended

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 02 Sep 2016 18:19:44 +0200,
jeeja.kp@xxxxxxxxx wrote:
> 
> From: Jeeja KP <jeeja.kp@xxxxxxxxx>
> 
> When the stream is in suspended state some applications wait
> on "Stream Pipe Error" in response to snd_pcm_avail call to
> resume the stream.
> 
> In the current implementation snd_pcm_avail() returns zero
> when the stream is in suspended state. This causes application
> to enter in infinite loop for frames to be available.
> 
> "Stream pipe Error" code is getting returned for read/write
> call when the stream is in suspended state. Similarly update
> snd_pcm_avail to return -ESTRPIPE.
> 
> Signed-off-by: Jeeja KP <jeeja.kp@xxxxxxxxx>

Applied, thanks.


Takashi

> ---
>  sound/core/pcm_native.c | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/sound/core/pcm_native.c b/sound/core/pcm_native.c
> index c61fd50..9d33c1e 100644
> --- a/sound/core/pcm_native.c
> +++ b/sound/core/pcm_native.c
> @@ -2637,9 +2637,11 @@ static int snd_pcm_hwsync(struct snd_pcm_substream *substream)
>  			break;
>  		/* Fall through */
>  	case SNDRV_PCM_STATE_PREPARED:
> -	case SNDRV_PCM_STATE_SUSPENDED:
>  		err = 0;
>  		break;
> +	case SNDRV_PCM_STATE_SUSPENDED:
> +		err = -ESTRPIPE;
> +		break;
>  	case SNDRV_PCM_STATE_XRUN:
>  		err = -EPIPE;
>  		break;
> -- 
> 2.5.0
> 
> _______________________________________________
> Alsa-devel mailing list
> Alsa-devel@xxxxxxxxxxxxxxxx
> http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
> 
_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxx
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel



[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux