Re: [PATCH v2 4/4] ALSA: compress: Be more restrictive about when a drain is allowed

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

 



On Mon, 22 Jul 2019 11:24:36 +0200,
Charles Keepax wrote:
> 
> Draining makes little sense in the situation of hardware overrun, as the
> hardware will have consumed all its available samples. Additionally,
> draining whilst the stream is paused would presumably get stuck as no
> data is being consumed on the DSP side.
> 
> Signed-off-by: Charles Keepax <ckeepax@xxxxxxxxxxxxxxxxxxxxx>

Applied, thanks.


Takashi

> ---
> 
> No changes since v1.
> 
> Thanks,
> Charles
> 
>  sound/core/compress_offload.c | 6 ++++++
>  1 file changed, 6 insertions(+)
> 
> diff --git a/sound/core/compress_offload.c b/sound/core/compress_offload.c
> index 6cf5b8440cf30..41905afada63f 100644
> --- a/sound/core/compress_offload.c
> +++ b/sound/core/compress_offload.c
> @@ -811,7 +811,10 @@ static int snd_compr_drain(struct snd_compr_stream *stream)
>  	case SNDRV_PCM_STATE_OPEN:
>  	case SNDRV_PCM_STATE_SETUP:
>  	case SNDRV_PCM_STATE_PREPARED:
> +	case SNDRV_PCM_STATE_PAUSED:
>  		return -EPERM;
> +	case SNDRV_PCM_STATE_XRUN:
> +		return -EPIPE;
>  	default:
>  		break;
>  	}
> @@ -860,7 +863,10 @@ static int snd_compr_partial_drain(struct snd_compr_stream *stream)
>  	case SNDRV_PCM_STATE_OPEN:
>  	case SNDRV_PCM_STATE_SETUP:
>  	case SNDRV_PCM_STATE_PREPARED:
> +	case SNDRV_PCM_STATE_PAUSED:
>  		return -EPERM;
> +	case SNDRV_PCM_STATE_XRUN:
> +		return -EPIPE;
>  	default:
>  		break;
>  	}
> -- 
> 2.11.0
> 
> 
_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxx
https://mailman.alsa-project.org/mailman/listinfo/alsa-devel



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

  Powered by Linux