[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <48D01B99.3040908@zytor.com>
Date: Tue, 16 Sep 2008 13:48:25 -0700
From: "H. Peter Anvin" <hpa@...or.com>
To: "Randy.Dunlap" <rdunlap@...otime.net>
CC: Stephen Rothwell <sfr@...b.auug.org.au>,
linux-next@...r.kernel.org, LKML <linux-kernel@...r.kernel.org>,
x86@...nel.org
Subject: Re: linux-next: Tree for September 16 (cpustr.h)
Randy.Dunlap wrote:
> I'm seeing lots of gcc warnings from the generated cpustr.h file, like so:
>
> arch/x86/boot/mkcpustr > arch/x86/boot/cpustr.h
> gcc -Wp,-MD,arch/x86/boot/.cpu.o.d -nostdinc -isystem /usr/lib/gcc/x86_64-redhat-linux/4.1.1/include -D__KERNEL__ -Iinclude -Iinclude2 -I/home/rdunlap/linsrc/linux-next-20080916/include -I/home/rdunlap/linsrc/linux-next-20080916/arch/x86/include -include include/linux/autoconf.h -I/home/rdunlap/linsrc/linux-next-20080916/arch/x86/boot -Iarch/x86/boot -I/home/rdunlap/linsrc/linux-next-20080916/include -Iinclude -I/home/rdunlap/linsrc/linux-next-20080916/include2 -Iinclude2 -I/home/rdunlap/linsrc/linux-next-20080916/include -I/home/rdunlap/linsrc/linux-next-20080916/arch/x86/include -include include/linux/autoconf.h -g -Os -D_SETUP -D__KERNEL__ -Wall -Wstrict-prototypes -march=i386 -mregparm=3 -include /home/rdunlap/linsrc/linux-next-20080916/arch/x86/boot/code16gcc.h -fno-strict-aliasing -fomit-frame-pointer -ffreestanding -fno-unit-at-a-time -fno-stack-protector -mpreferred-stack-boundary=2 -m32 -D__BIG_KERNEL__ -D"KBUILD_STR(s)=#s" -D"KBUILD_BASENAME=KBUILD_STR(cpu)"
-D"KBUILD_MODNAME=KBUILD_STR(cpu)" -D"DEBUG_HASH=3" -D"DEBUG_HASH2=23" -c -o arch/x86/boot/cpu.o /home/rdunlap/linsrc/linux-next-20080916/arch/x86/boot/cpu.c
> cc1: warning: hex escape sequence out of range
>
>
> The ending lines of cpustr.h include hex strings like "\x111".
> gcc complains about these. If I change them to "\x011" (e.g.), there
> is no warning.
>
Yes, there is a patch that adds a 9th cpuflags word, which this code
doesn't handle. The warning is real, there is an #error in mkcpustr.c
which is supposed to trigger, but doesn't because of a typo:
#if NCAPFLAGS > 8
# error "Need to adjust the boot code handling of CPUID strings"
#endif
(The actual variable is called NCAPINTS.)
Attached is a completely untested patch for this problem.
-hpa
View attachment "diff" of type "text/plain" (2231 bytes)
Powered by blists - more mailing lists