[alsa-devel] [PATCH] ASoC: rsnd: fix usrcnt decrementing bug

Andrzej Hajda a.hajda at samsung.com
Wed Dec 23 11:37:21 CET 2015


Field usrcnt is unsigned so it cannot be lesser than zero.

The problem has been detected using proposed semantic patch
scripts/coccinelle/tests/unsigned_lesser_than_zero.cocci [1].

[1]: http://permalink.gmane.org/gmane.linux.kernel/2038576

Signed-off-by: Andrzej Hajda <a.hajda at samsung.com>
---
 sound/soc/sh/rcar/ssi.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/sound/soc/sh/rcar/ssi.c b/sound/soc/sh/rcar/ssi.c
index 0b91692..8ca30fd 100644
--- a/sound/soc/sh/rcar/ssi.c
+++ b/sound/soc/sh/rcar/ssi.c
@@ -381,9 +381,9 @@ rsnd_ssi_quit_end:
 
 	rsnd_mod_power_off(mod);
 
-	ssi->usrcnt--;
-
-	if (ssi->usrcnt < 0)
+	if (ssi->usrcnt > 0)
+		ssi->usrcnt--;
+	else
 		dev_err(dev, "%s[%d] usrcnt error\n",
 			rsnd_mod_name(mod), rsnd_mod_id(mod));
 
-- 
1.9.1



More information about the Alsa-devel mailing list