Re: [patch] sh: off by one BUG_ON() in setup_bootmem_node()

From: Geert Uytterhoeven
Date: Thu Dec 04 2014 - 06:04:13 EST


On Thu, Dec 4, 2014 at 12:01 PM, Dan Carpenter <dan.carpenter@xxxxxxxxxx> wrote:
> This off by one bug is harmless but it upsets the static checkers and
> the code is obvious so it doesn't hurt to fix it. The Smatch warning
> is:
>
> arch/sh/mm/numa.c:47 setup_bootmem_node()
> error: buffer overflow 'node_data' 1024 <= 1024
>
> Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>

Acked-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>

> diff --git a/arch/sh/mm/numa.c b/arch/sh/mm/numa.c
> index 3d85225..bce52ba 100644
> --- a/arch/sh/mm/numa.c
> +++ b/arch/sh/mm/numa.c
> @@ -31,7 +31,7 @@ void __init setup_bootmem_node(int nid, unsigned long start, unsigned long end)
> unsigned long bootmem_paddr;
>
> /* Don't allow bogus node assignment */
> - BUG_ON(nid > MAX_NUMNODES || nid <= 0);
> + BUG_ON(nid >= MAX_NUMNODES || nid <= 0);
>
> start_pfn = start >> PAGE_SHIFT;
> end_pfn = end >> PAGE_SHIFT;

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/