Re: 2.6.14-rc4-rt1

From: Badari Pulavarty
Date: Fri Oct 14 2005 - 14:25:35 EST


On Fri, 2005-10-14 at 15:12 +0200, Ingo Molnar wrote:
> * Andi Kleen <ak@xxxxxxx> wrote:
>
> > > > I am getting similar segfault on boot problem on 2.6.14-rc4-rt1 on my
> > > > x86-64 box (with LATENCY_TRACE).
> > >
> > > > INIT: version 2.86 booting
> > > > hotplug[877]: segfault at ffffffff8010f588 rip ffffffff8010f588 rsp
> > > > 00007fffff8bee68 error 15
> > >
> > > what does the ffffffff8010f588 RIP address map to? You can find out by
> >
> > It could be any kernel address that someone injected into user space.
> > Most likely some problem with the vsyscall page with either signal
> > handling or gettimeofday. vsyscall code is tricky to hack because you
> > cannot add any new functions there, just inlines, otherwise the code
> > won't end up the right section.
>
> ah, indeed - i completely forgot about vsyscalls - they must not be
> traced. Badari, does the patch below help?
>
> Ingo
>
> Index: linux/arch/x86_64/kernel/vsyscall.c
> ===================================================================
> --- linux.orig/arch/x86_64/kernel/vsyscall.c
> +++ linux/arch/x86_64/kernel/vsyscall.c
> @@ -34,7 +34,7 @@
> #include <asm/errno.h>
> #include <asm/io.h>
>
> -#define __vsyscall(nr) __attribute__ ((unused,__section__(".vsyscall_" #nr)))
> +#define __vsyscall(nr) __attribute__ ((unused,__section__(".vsyscall_" #nr))) notrace
> #define force_inline __attribute__((always_inline)) inline
>
> int __sysctl_vsyscall __section_sysctl_vsyscall = 1;

The patch fixed my problem. Machine boots fine.

My next problem. I can't seem to compile the kernel on -rc4-rt1

elm3a242:/usr/src/linux-2.6.14-rc4 # make
CHK include/linux/version.h
SPLIT include/linux/autoconf.h -> include/config/*
CC arch/x86_64/kernel/asm-offsets.s
GEN include/asm-x86_64/asm-offsets.h
Trace/breakpoint trap
elm3a242:/usr/src/linux-2.6.14-rc4 # uname -a
Linux elm3a242 2.6.14-rc4-rt1 #4 SMP PREEMPT Fri Oct 14 05:16:35 PDT
2005 x86_64 x86_64 x86_64 GNU/Linux


Thanks,
Badari

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