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@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));