]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
usb: gadget: udc: net2272: Fix bitwise and boolean operations
authorGustavo A. R. Silva <gustavo@embeddedor.com>
Tue, 22 Jan 2019 21:28:08 +0000 (15:28 -0600)
committerFelipe Balbi <felipe.balbi@linux.intel.com>
Mon, 28 Jan 2019 13:27:21 +0000 (15:27 +0200)
(!x & y) strikes again.

Fix bitwise and boolean operations by enclosing the expression:

intcsr & (1 << NET2272_PCI_IRQ)

in parentheses, before applying the boolean operator '!'.

Notice that this code has been there since 2011. So, it would
be helpful if someone can double-check this.

This issue was detected with the help of Coccinelle.

Fixes: ceb80363b2ec ("USB: net2272: driver for PLX NET2272 USB device controller")
Cc: stable@vger.kernel.org
Signed-off-by: Gustavo A. R. Silva <gustavo@embeddedor.com>
Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
drivers/usb/gadget/udc/net2272.c

index 660878a195055b32568db74ca3716b9fbccbae12..b77f3126580ebb937986e7ced5b28739dd25dea4 100644 (file)
@@ -2083,7 +2083,7 @@ static irqreturn_t net2272_irq(int irq, void *_dev)
 #if defined(PLX_PCI_RDK2)
        /* see if PCI int for us by checking irqstat */
        intcsr = readl(dev->rdk2.fpga_base_addr + RDK2_IRQSTAT);
-       if (!intcsr & (1 << NET2272_PCI_IRQ)) {
+       if (!(intcsr & (1 << NET2272_PCI_IRQ))) {
                spin_unlock(&dev->lock);
                return IRQ_NONE;
        }