On Wed, 29 Apr 2009 15:21:39 +0530 Sachin Sant <sachinp@xxxxxxxxxx> wrote: > Heiko Carstens wrote: > > On Fri, 24 Apr 2009 09:25:33 +0200 > > Ingo Molnar <mingo@xxxxxxx> wrote: > >> * Sachin Sant <sachinp@xxxxxxxxxx> wrote: > >>> Today's next tree build(s390 allmodconfig) failed with > >>> > >>> kernel/built-in.o: In function `trace_softirq_entry' > >>> include/trace/events/irq.h:42: undefined reference to > >>> `' > >>> include/trace/events/irq.h:42: undefined reference to > >>> `__tracepoint_softirq_entry' > >>> kernel/built-in.o: In function `trace_softirq_exit': > >>> include/trace/events/irq.h:48: undefined reference to > >>> `__tracepoint_softirq_exit' > >>> include/trace/events/irq.h:48: undefined reference to > >>> `__tracepoint_softirq_exit' > >>> > >> Hm, that's weird - s390 does not build kernel/softirq.o? Hm, it does > >> - softirq.o is an obj-y object. > > > > s390 does build kernel/softirq.o. However it's anything but obvious to > > me how the tracepoint infrastructure works. Too many #ifdefs, #define's > > and #undefine's... > > > > I would expect that struct __tracepoint_softirq_entry somehow gets > > defined via one of the TRACE_FORMAT macros, no? > Today's next tree also has this failure. Any solution for this problem ? Ingo, could you pick up the patch below please? Subject: [PATCH] tracing: fix compile error From: Heiko Carstens <heiko.carstens@xxxxxxxxxx> "tracing: create automated trace defines" causes this compile error on s390: kernel/built-in.o: In function `__do_softirq': (.text+0x1c680): undefined reference to `__tracepoint_softirq_entry' This happens because the definitions of the softirq tracepoints were moved from kernel/softirq.c to kernel/irq/handle.c. Since s390 doesn't support generic hardirqs handle.c doesn't get compiled and the definitions are missing. So move the tracepoints to softirq.c again. Reported-by: Sachin Sant <sachinp@xxxxxxxxxx> Cc: Steven Rostedt <rostedt@xxxxxxxxxxx> Signed-off-by: Heiko Carstens <heiko.carstens@xxxxxxxxxx> --- kernel/irq/handle.c | 2 -- kernel/softirq.c | 2 ++ 2 files changed, 2 insertions(+), 2 deletions(-) Index: linux-next/kernel/irq/handle.c =================================================================== --- linux-next.orig/kernel/irq/handle.c +++ linux-next/kernel/irq/handle.c @@ -18,8 +18,6 @@ #include <linux/rculist.h> #include <linux/hash.h> #include <linux/bootmem.h> - -#define CREATE_TRACE_POINTS #include <trace/events/irq.h> #include "internals.h" Index: linux-next/kernel/softirq.c =================================================================== --- linux-next.orig/kernel/softirq.c +++ linux-next/kernel/softirq.c @@ -24,6 +24,8 @@ #include <linux/ftrace.h> #include <linux/smp.h> #include <linux/tick.h> + +#define CREATE_TRACE_POINTS #include <trace/events/irq.h> #include <asm/irq.h> -- To unsubscribe from this list: send the line "unsubscribe linux-next" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html