MIPS: Octeon: Off by one in octeon_irq_gpio_map()
authorDan Carpenter <dan.carpenter@oracle.com>
Thu, 14 Jul 2016 10:14:29 +0000 (13:14 +0300)
committerRalf Baechle <ralf@linux-mips.org>
Thu, 21 Jul 2016 09:20:10 +0000 (11:20 +0200)
It should be >= ARRAY_SIZE() instead of > ARRAY_SIZE().

Fixes: 64b139f97c01 ('MIPS: OCTEON: irq: add CIB and other fixes')
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Acked-by: David Daney <david.daney@cavium.com>
Cc: Rob Herring <robh@kernel.org>
Cc: Marc Zyngier <marc.zyngier@arm.com>
Cc: linux-mips@linux-mips.org
Cc: kernel-janitors@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/13813/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
arch/mips/cavium-octeon/octeon-irq.c

index 368eb490354ced34c29a3e0b640ac66c9762b977..75a4add63a28230671ab5a3fa6ab947a53d023a7 100644 (file)
@@ -1260,7 +1260,7 @@ static int octeon_irq_gpio_map(struct irq_domain *d,
 
        line = (hw + gpiod->base_hwirq) >> 6;
        bit = (hw + gpiod->base_hwirq) & 63;
-       if (line > ARRAY_SIZE(octeon_irq_ciu_to_irq) ||
+       if (line >= ARRAY_SIZE(octeon_irq_ciu_to_irq) ||
                octeon_irq_ciu_to_irq[line][bit] != 0)
                return -EINVAL;