Re: Linux 2.2.14pre15

Matthew Wilcox (willy@thepuffingroup.com)
Wed, 22 Dec 1999 15:25:19 -0500


On Sun, Dec 19, 1999 at 09:38:34AM -0500, TenThumbs wrote:
> Given the signed vs. unsigned issues there, I rebuilt pre 15 with "gcc_2.7.2.3
> -W" and turned up these.
>
> arch/i386/mm/init.c:256: warning: unsigned value >= 0 is always 1
> dirvers/misc/parport_pc.c:931: warning: unsigned value < 0 is always 0
> drivers/char/esp.c:2564: warning: unsigned value < 0 is always 0
> drivers/char/random.c:1443: warning: unsigned value < 0 is always 0
> drivers/char/random.c:1496: warning: unsigned value < 0 is always 0
> drivers/scsi/hosts.c:788: warning: unsigned value < 0 is always 0
> mm/memory.c:395: warning: unsigned value < 0 is always 0
> mm/slab.c:717: warning: unsigned value < 0 is always 0
>
> 111 include/asm-i386/fixmap.h:95: warning: unsigned value >= 0 is always 1
> 300 include/linux/signal.h:104: warning: unsigned value < 0 is always 0
> 300 include/linux/signal.h:107: warning: unsigned value < 0 is always 0
> 300 include/linux/signal.h:110: warning: unsigned value < 0 is always 0
> 300 include/linux/signal.h:136: warning: unsigned value < 0 is always 0
>
> I checked the first group and gcc definitely did not do what was intended. An
> expert need to look at these. The second group is surprising but what is wrong
> depends on exactly how teh include file is used.

In fact, nothing is wrong with the signal.h file, the value which is
less than 0 is constant and leads to the eliminatin of the loop which is
precisely what we want. I have a patch that would remove this warning
and thus make -W a usable option, I just need to tidy it up and submit it.

-- 
"If it shine or if it rain,
    Little will I care or know.
 Days, like drops upon a pane,
    Slip, and join, and go."

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/