• Tejun Heo's avatar
    x86: don't include slab.h from arch/x86/include/asm/pgtable_32.h · 57f4c226
    Tejun Heo authored
    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: default avatarTejun Heo <tj@kernel.org>
    Acked-by: default avatarPekka Enberg <penberg@cs.helsinki.fi>
    Acked-by: default avatarChristoph Lameter <cl@linux-foundation.org>
    Cc: Ingo Molnar <mingo@elte.hu>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Cc: H. Peter Anvin <hpa@zytor.com>
    57f4c226
pgtable_32.h 2.57 KB