perf bpf: Fix building perf with BUILD_BPF_SKEL=1 by default in more distros
Arnaldo reported that building all his containers with BUILD_BPF_SKEL=1
to then make this the default he found problems in some distros where
the system linux/bpf.h file was being used and lacked this:
util/bpf_skel/bperf_leader.bpf.c:13:20: error: use of undeclared identifier 'BPF_F_PRESERVE_ELEMS'
So use instead the vmlinux.h file generated by bpftool from BTF info.
This fixed these as well, getting the build back working on debian:11,
debian:experimental and ubuntu:21.10:
In file included from In file included from util/bpf_skel/bperf_leader.bpf.cutil/bpf_skel/bpf_prog_profiler.bpf.c::33:
In file included from In file included from /usr/include/linux/bpf.h/usr/include/linux/bpf.h::1111:
/usr/include/linux/types.h/usr/include/linux/types.h::55::1010:: In file included from util/bpf_skel/bperf_follower.bpf.c:3fatal errorfatal error:
: : In file included from /usr/include/linux/bpf.h:'asm/types.h' file not found11'asm/types.h' file not found:
/usr/include/linux/types.h:5:10: fatal error: 'asm/types.h' file not found
#include <asm/types.h>#include <asm/types.h>
1 error generated.
Reported-by: Arnaldo Carvalho de Melo <email@example.com>
Signed-off-by: Song Liu <firstname.lastname@example.org>
Tested-by: Athira Rajeev <email@example.com>
Cc: Jiri Olsa <firstname.lastname@example.org>
Cc: Namhyung Kim <email@example.com>
Signed-off-by: Arnaldo Carvalho de Melo <firstname.lastname@example.org>
3 files changed