crypto: omap-des - fix BUG_ON condition
authorAsaf Vertz <asaf.vertz@tandemg.com>
Mon, 5 Jan 2015 08:23:10 +0000 (10:23 +0200)
committerHerbert Xu <herbert@gondor.apana.org.au>
Thu, 8 Jan 2015 10:46:17 +0000 (21:46 +1100)
dd->total is unsigned so it won't do any good to check for negative
value after subtracting instead of that we should check if the
subtracted value is bigger than him

This was partially found by using a static code analysis program
called cppcheck.

Signed-off-by: Asaf Vertz <asaf.vertz@tandemg.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
drivers/crypto/omap-des.c

index e350f5be4d2ebcfd4451850ebe70f54365d4036b..0b8dcf5eb74eb223c75b2d863fd79f1b7c11e021 100644 (file)
@@ -965,9 +965,9 @@ static irqreturn_t omap_des_irq(int irq, void *dev_id)
                        }
                }
 
-               dd->total -= DES_BLOCK_SIZE;
+               BUG_ON(dd->total < DES_BLOCK_SIZE);
 
-               BUG_ON(dd->total < 0);
+               dd->total -= DES_BLOCK_SIZE;
 
                /* Clear IRQ status */
                status &= ~DES_REG_IRQ_DATA_OUT;