diff mbox

[next] ASoC: rsnd: make main_rate signed to check for -ve error return codes

Message ID 20170619163523.2208-1-colin.king@canonical.com (mailing list archive)
State Accepted
Headers show

Commit Message

Colin King June 19, 2017, 4:35 p.m. UTC
From: Colin Ian King <colin.king@canonical.com>

The comparison of main_rate < 0 has no effect because main_rate is
an unsigned int. Make it signed so that any -ve error returns from the
call to rsnd_clk_query can be detected.

Detected by CoverityScan, CID#1446152 ("Unsigned compared against 0")

Fixes: ef4cf5d6a143e0 ("ASoC: rsnd: add rsnd_ssi_clk_query()")
Signed-off-by: Colin Ian King <colin.king@canonical.com>
---
 sound/soc/sh/rcar/ssi.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Kuninori Morimoto June 20, 2017, 12:01 a.m. UTC | #1
Hi Colin

> From: Colin Ian King <colin.king@canonical.com>
> 
> The comparison of main_rate < 0 has no effect because main_rate is
> an unsigned int. Make it signed so that any -ve error returns from the
> call to rsnd_clk_query can be detected.
> 
> Detected by CoverityScan, CID#1446152 ("Unsigned compared against 0")
> 
> Fixes: ef4cf5d6a143e0 ("ASoC: rsnd: add rsnd_ssi_clk_query()")
> Signed-off-by: Colin Ian King <colin.king@canonical.com>
> ---

Thank you for your patch.
But, I posted this fixup patch (not yet accepted)

To: Mark Brown <broonie@kernel.org>, Julia Lawall <julia.lawall@lip6.fr>
Subject: [PATCH] ASoC: rsnd: fixup unsigned expression compared with zero: main_rate
From: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
CC: Linux-ALSA <alsa-devel@alsa-project.org>, Simon <horms@verge.net.au>,
 <linux-renesas-soc@vger.kernel.org>
Date: Fri, 16 Jun 2017 00:02:59 +0000

>  sound/soc/sh/rcar/ssi.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/sound/soc/sh/rcar/ssi.c b/sound/soc/sh/rcar/ssi.c
> index c8956c3484dd..d220512918f9 100644
> --- a/sound/soc/sh/rcar/ssi.c
> +++ b/sound/soc/sh/rcar/ssi.c
> @@ -258,7 +258,7 @@ static int rsnd_ssi_master_clk_start(struct rsnd_mod *mod,
>  	struct rsnd_mod *ssi_parent_mod = rsnd_io_to_mod_ssip(io);
>  	int chan = rsnd_runtime_channel_for_ssi(io);
>  	int idx, ret;
> -	unsigned int main_rate;
> +	int main_rate;
>  	unsigned int rate = rsnd_io_is_play(io) ?
>  		rsnd_src_get_out_rate(priv, io) :
>  		rsnd_src_get_in_rate(priv, io);
> -- 
> 2.11.0
>
diff mbox

Patch

diff --git a/sound/soc/sh/rcar/ssi.c b/sound/soc/sh/rcar/ssi.c
index c8956c3484dd..d220512918f9 100644
--- a/sound/soc/sh/rcar/ssi.c
+++ b/sound/soc/sh/rcar/ssi.c
@@ -258,7 +258,7 @@  static int rsnd_ssi_master_clk_start(struct rsnd_mod *mod,
 	struct rsnd_mod *ssi_parent_mod = rsnd_io_to_mod_ssip(io);
 	int chan = rsnd_runtime_channel_for_ssi(io);
 	int idx, ret;
-	unsigned int main_rate;
+	int main_rate;
 	unsigned int rate = rsnd_io_is_play(io) ?
 		rsnd_src_get_out_rate(priv, io) :
 		rsnd_src_get_in_rate(priv, io);