perf: add asm include required for v6.9+

Kernel commit 9eea8fafe33e ("libbpf: fix __arg_ctx type enforcement for
perf_event programs") added with 6.9-rc1 tools/include/uapi/asm/bpf_perf_event.h
which for arc, arm64, loongarch, riscv and s390 includes headers from
the arch/${ARCH}/... directories.

Which results in:

  ERROR: perf-1.0-r0 do_compile: oe_runmake failed
  | In file included from 1.0/perf-1.0/tools/include/uapi/linux/bpf_perf_event.h:11,
  |                  from libbpf.c:36:
  | perf/1.0/perf-1.0/tools/include/uapi/asm/bpf_perf_event.h:2:10: fatal error: ../../arch/arm64/include/uapi/asm/bpf_perf_event.h: No such file or directory
  |     2 | #include "../../arch/arm64/include/uapi/asm/bpf_perf_event.h"
  |       |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

We copy the uapi/asm directory to make sure the header file is
present.

(From OE-Core rev: d92e04c1cebd7d29a767d5862b713fa97d3e5d8e)

Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Max Krummenacher
2024-04-04 16:47:01 -04:00
committed by Richard Purdie
parent 2a8994a58c
commit 8650a98b27

View File

@@ -129,6 +129,7 @@ EXTRA_OEMAKE += "\
# honour a JOBS variable.
EXTRA_OEMAKE:append:task-configure = " JOBS=1"
# include/uapi/asm is for: include/uapi/asm/bpf_perf_event.h
PERF_SRC ?= "Makefile \
tools/arch \
tools/build \
@@ -139,6 +140,7 @@ PERF_SRC ?= "Makefile \
tools/scripts \
scripts/ \
arch/arm64/tools \
arch/${ARCH}/include/uapi/asm/ \
arch/${ARCH}/Makefile \
"