diff options
author | Will Deacon <[email protected]> | 2019-11-21 12:41:40 +0000 |
---|---|---|
committer | Will Deacon <[email protected]> | 2020-07-21 10:50:35 +0100 |
commit | f143c11bb7b924403ea2d5b5c990717772293620 (patch) | |
tree | e3a0c0327343bbb7123fb09a252ca79ed51b99a7 /scripts/gcc-plugins/cyc_complexity_plugin.c | |
parent | 9ebcfadb0610322ac537dd7aa5d9cbc2b2894c68 (diff) |
tools: bpf: Use local copy of headers including uapi/linux/filter.h
Pulling header files directly out of the kernel sources for inclusion in
userspace programs is highly error prone, not least because it bypasses
the kbuild infrastructure entirely and so may end up referencing other
header files that have not been generated.
Subsequent patches will cause compiler.h to pull in the ungenerated
asm/rwonce.h file via filter.h, breaking the build for tools/bpf:
| $ make -C tools/bpf
| make: Entering directory '/linux/tools/bpf'
| CC bpf_jit_disasm.o
| LINK bpf_jit_disasm
| CC bpf_dbg.o
| In file included from /linux/include/uapi/linux/filter.h:9,
| from /linux/tools/bpf/bpf_dbg.c:41:
| /linux/include/linux/compiler.h:247:10: fatal error: asm/rwonce.h: No such file or directory
| #include <asm/rwonce.h>
| ^~~~~~~~~~~~~~
| compilation terminated.
| make: *** [Makefile:61: bpf_dbg.o] Error 1
| make: Leaving directory '/linux/tools/bpf'
Take a copy of the installed version of linux/filter.h (i.e. the one
created by the 'headers_install' target) into tools/include/uapi/linux/
and adjust the BPF tool Makefile to reference the local include
directories instead of those in the main source tree.
Cc: Masahiro Yamada <[email protected]>
Acked-by: Peter Zijlstra (Intel) <[email protected]>
Acked-by: Alexei Starovoitov <[email protected]>
Suggested-by: Daniel Borkmann <[email protected]>
Reported-by: Xiao Yang <[email protected]>
Signed-off-by: Will Deacon <[email protected]>
Diffstat (limited to 'scripts/gcc-plugins/cyc_complexity_plugin.c')
0 files changed, 0 insertions, 0 deletions