• David Howells's avatar
    perf: Make perf build for x86 with UAPI disintegration applied · d2709c7c
    David Howells authored
    Make perf build for x86 once the UAPI disintegration patches for that arch
    have been applied by adding the appropriate -I flags - in the right order -
    and then converting some #includes that use ../.. notation to find main kernel
    headerfiles to use <asm/foo.h> and <linux/foo.h> instead.
    
    Note that -Iarch/foo/include/uapi is present _before_ -Iarch/foo/include.
    This makes sure we get the userspace version of the pt_regs struct.  Ideally,
    we wouldn't have the latter -I flag at all, but unfortunately we want
    asm/svm.h and asm/vmx.h in builtin-kvm.c and these aren't part of the UAPI -
    at least not for x86.  I wonder if the bits outside of the __KERNEL__ guards
    *should* be transferred there.
    
    I note also that perf seems to do its dependency handling manually by listing
    all the header files it might want to use in LIB_H in the Makefile.  Can this
    be changed to use -MD?
    
    Note that to do make this work, we need to export and UAPI disintegrate
    linux/hw_breakpoint.h, which I think should've been exported previously so that
    perf can access the bits.  We have to do this in the same patch to maintain
    bisectability.
    Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
    d2709c7c
parse-events.c 25.7 KB