bpf: fix broken BPF selftest build
authorDaniel Borkmann <daniel@iogearbox.net>
Tue, 12 Dec 2017 01:25:32 +0000 (02:25 +0100)
committerAlexei Starovoitov <ast@kernel.org>
Tue, 12 Dec 2017 17:51:12 +0000 (09:51 -0800)
commit720f228e8d3128b7ab1d39f51fdd8da07a7640c9
tree3c9f5086b0b07625e069109a3f2fe37c815980f2
parenta23f06f06dbe54696e8d4f156b317e8c9961c345
bpf: fix broken BPF selftest build

At least on x86_64, the kernel's BPF selftests seemed to have stopped
to build due to 618e165b2a8e ("selftests/bpf: sync kernel headers and
introduce arch support in Makefile"):

  [...]
  In file included from test_verifier.c:29:0:
  ../../../include/uapi/linux/bpf_perf_event.h:11:32:
     fatal error: asm/bpf_perf_event.h: No such file or directory
   #include <asm/bpf_perf_event.h>
                                ^
  compilation terminated.
  [...]

While pulling in tools/arch/*/include/uapi/asm/bpf_perf_event.h seems
to work fine, there's no automated fall-back logic right now that would
do the same out of tools/include/uapi/asm-generic/bpf_perf_event.h. The
usual convention today is to add a include/[uapi/]asm/ equivalent that
would pull in the correct arch header or generic one as fall-back, all
ifdef'ed based on compiler target definition. It's similarly done also
in other cases such as tools/include/asm/barrier.h, thus adapt the same
here.

Fixes: 618e165b2a8e ("selftests/bpf: sync kernel headers and introduce arch support in Makefile")
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Cc: Hendrik Brueckner <brueckner@linux.vnet.ibm.com>
Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
Acked-by: Alexei Starovoitov <ast@kernel.org>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
tools/include/uapi/asm/bpf_perf_event.h [new file with mode: 0644]
tools/testing/selftests/bpf/Makefile