Re: linux-next: build failure after merge of the final tree

From: David Miller
Date: Mon Jan 09 2012 - 16:37:42 EST


From: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
Date: Mon, 9 Jan 2012 16:59:50 +1100

>> > include/trace/events/kmem.h:267:1: error: implicit declaration of function 'check_trace_callback_type_mm_page_alloc_extfrag' [-Werror=implicit-function-declaration]
>> > In file included from include/trace/ftrace.h:774:0,
>> > from include/trace/define_trace.h:86,
>> > from include/trace/events/power.h:240,
>> > from kernel/trace/power-traces.c:14:
>> > include/trace/events/kmem.h: In function 'perf_test_probe_mm_page_pcpu_drain':
>> > include/trace/events/kmem.h:256:1: error: implicit declaration of function 'check_trace_callback_type_mm_page_pcpu_drain' [-Werror=implicit-function-declaration]

I think the problem has to do with slab_def.h's explicit inclusion of
trace/kmem.h

If this somehow gets included while we are expanding define_trace.h, then
TRACE_SYSTEM will get redefined and screw up all of the includes that
define_trace.h is trying to perform for the sake of power.h

Other architectures probably hit slab_def.h via some earlier includes
and therefore don't hit this situation like Sparc does.

Adding an explicit <linux/slab.h> include to power-traces.c indeed fixes
the build.
--
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/