]> git.baikalelectronics.ru Git - kernel.git/commit
x86: don't include slab.h from arch/x86/include/asm/pgtable_32.h
authorTejun Heo <tj@kernel.org>
Tue, 23 Mar 2010 06:32:53 +0000 (15:32 +0900)
committerTejun Heo <tj@kernel.org>
Tue, 30 Mar 2010 13:02:21 +0000 (22:02 +0900)
commit92950517724b855d6cc5bea944d16800eb1b3a02
treef6a3897880bfa6cac6773c2471e24fae2adf60f0
parentf93f3e298834b7a783cd0736d68a1908520e557c
x86: don't include slab.h from arch/x86/include/asm/pgtable_32.h

Including slab.h from x86 pgtable_32.h creates a troublesome
dependency chain w/ ftrace enabled.  The following chain leads to
inclusion of pgtable_32.h from define_trace.h.

 trace/define_trace.h
 trace/ftrace.h
 linux/ftrace_event.h
 linux/ring_buffer.h
 linux/mm.h
 asm/pgtable.h
 asm/pgtable_32.h

slab.h itself defines trace hooks via

 linux/sl[aou]b_def.h
 linux/kmemtrace.h
 trace/events/kmem.h

If slab.h is not included before define_trace.h is included, this
leads to duplicate definitions of kmemtrace hooks or other include
dependency problems.

pgtable_32.h doesn't need slab.h to begin with.  Don't include it from
there.

Signed-off-by: Tejun Heo <tj@kernel.org>
Acked-by: Pekka Enberg <penberg@cs.helsinki.fi>
Acked-by: Christoph Lameter <cl@linux-foundation.org>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: H. Peter Anvin <hpa@zytor.com>
arch/x86/include/asm/pgtable_32.h