[alsa-devel] [PATCH] pcm: route: Don't handle no matching chmap as a serious error

David Henningsson david.henningsson at canonical.com
Tue Mar 18 17:19:29 CET 2014


On 03/18/2014 03:27 PM, Takashi Iwai wrote:
> When find_matching_chmap() returns an error for the non-matching
> chmap, the caller, snd_pcm_route_open(), also returns an error
> although it shouldn't be handled as the fatal error.  This results in
> the probe error with PulseAudio and it gives no real output in the
> end.

Hmm, could you give a more specific example? In case the driver does not
support channel maps at all, that case is handled in the beginning of
the function.

So this only happens if the driver supports channel maps, but only
non-compatible with the requested map. In which case I believe it's
correct that the probing should fail...?

> 
> Signed-off-by: Takashi Iwai <tiwai at suse.de>
> ---
>  src/pcm/pcm_route.c | 4 +---
>  1 file changed, 1 insertion(+), 3 deletions(-)
> 
> diff --git a/src/pcm/pcm_route.c b/src/pcm/pcm_route.c
> index ab17fa78be2c..ac11bdc8adfd 100644
> --- a/src/pcm/pcm_route.c
> +++ b/src/pcm/pcm_route.c
> @@ -940,10 +940,8 @@ static int find_matching_chmap(snd_pcm_t *spcm, snd_pcm_chmap_t *tt_chmap,
>  
>  	snd_pcm_free_chmaps(chmaps);
>  
> -	if (*found_chmap == NULL) {
> +	if (*found_chmap == NULL)
>  		SNDERR("Found no matching channel map");
> -		return -EINVAL;
> -	}
>  	return 0;
>  }
>  
> 



-- 
David Henningsson, Canonical Ltd.
https://launchpad.net/~diwic


More information about the Alsa-devel mailing list