Re: [PATCH] mpparse.c:231: warning: comparison is always false

From: Dave Jones
Date: Wed Sep 13 2006 - 12:36:19 EST


On Wed, Sep 13, 2006 at 08:50:10AM +0200, Jarek Poplawski wrote:

> Probably after 2.6.18-rc6-git1 there is this cc warning:
> "arch/i386/kernel/mpparse.c:231: warning: comparison is
> always false due to limited range of data type".
> Maybe this patch will be helpful.
>
> diff -Nurp linux-2.6.18-rc6-git4-/arch/i386/kernel/mpparse.c linux-2.6.18-rc6-git4/arch/i386/kernel/mpparse.c
> --- linux-2.6.18-rc6-git4-/arch/i386/kernel/mpparse.c 2006-09-13 00:01:00.000000000 +0200
> +++ linux-2.6.18-rc6-git4/arch/i386/kernel/mpparse.c 2006-09-13 00:01:00.000000000 +0200
> @@ -228,12 +228,14 @@ static void __init MP_bus_info (struct m
>
> mpc_oem_bus_info(m, str, translation_table[mpc_record]);
>
> +#if 0xFF >= MAX_MP_BUSSES
> if (m->mpc_busid >= MAX_MP_BUSSES) {
> printk(KERN_WARNING "MP table busid value (%d) for bustype %s "
> " is too large, max. supported is %d\n",
> m->mpc_busid, str, MAX_MP_BUSSES - 1);
> return;
> }
> +#endif

mpc_busid is a uchar. I don't see how this can ever be > 0xff, yet
mach-summit and mach-generic have MAX_MP_BUSSES set to 260.

I don't see how this can possibly work.

Dave
-
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/