Re: 2.6.21-rc7-mm2 -- x86_64 VDSO compile error II

Andi Kleen
2007-04-26T14:13:56Z

On Thursday 26 April 2007 15:27:36 Mel Gorman wrote:
> On (26/04/07 13:16), Andy Whitcroft didst pronounce:
> > Getting the following on an x86_64 numa box:
> >
> > CC arch/x86_64/vdso/vclock_gettime.o
> > arch/x86_64/vdso/vclock_gettime.c:1: error: code model `small' not
> > supported in the 32 bit mode
> > make[1]: *** [arch/x86_64/vdso/vclock_gettime.o] Error 1
> > make: *** [arch/x86_64/vdso] Error 2
> >
> > Kernel config here: http://test.kernel.org/abat/85358/build/dotconfig
> >
>
> Hi Andi,
>
> Backing out x86_64-mm-vdso.patch allowed this kernel to build and boot
> successful on the machine in question (elm3b6). The backout caused one reject
> in Documentation/kernel-parameters but otherwise backed out easily. It's
> not super-clear why it fails to build. If you want me to try another patch,
> make sure I'm cc'd and I'll give it a spin.

Or please try this simple patch.

-Andi

Index: linux/arch/x86_64/vdso/Makefile
===================================================================
--- linux.orig/arch/x86_64/vdso/Makefile
+++ linux/arch/x86_64/vdso/Makefile
@@ -32,7 +32,7 @@ $(obj)/vdso.o: $(src)/vdso.S $(obj)/vdso
$(obj)/vdso.so: $(src)/vdso.lds $(vobjs) FORCE
$(call if_changed,syscall)

-CF := $(PROFILING) -mcmodel=small -fPIC -g0 -O2 -fasynchronous-unwind-tables
+CF := $(PROFILING) -mcmodel=small -fPIC -g0 -O2 -fasynchronous-unwind-tables -m64

$(obj)/vclock_gettime.o: CFLAGS = $(CF)
$(obj)/vgetcpu.o: CFLAGS = $(CF)