Em Tue, Dec 06, 2022 at 02:01:43PM -0300, Arnaldo Carvalho de Melo escreveu: > Em Tue, Dec 06, 2022 at 01:41:41PM -0300, Arnaldo Carvalho de Melo escreveu: > > Now to look at the BUILD_BPF_SKEL=1 kaboom: > > > > [acme@quaco perf]$ alias m > > alias m='rm -rf ~/libexec/perf-core/ ; make -k NO_LIBTRACEEVENT=1 BUILD_BPF_SKEL=1 O=/tmp/build/perf -C tools/perf install-bin && perf test python' > > [acme@quaco perf]$ m > > make: Entering directory '/home/acme/git/perf/tools/perf' > > BUILD: Doing 'make -j8' parallel build > > <SNIP> > > /usr/bin/ld: /tmp/build/perf/perf-in.o: in function `add_work': > > /home/acme/git/perf/tools/perf/util/bpf_kwork.c:285: undefined reference to `perf_kwork_add_work' > > /usr/bin/ld: /tmp/build/perf/perf-in.o: in function `lock_contention_read': For that bpf_kwork.c see below. Now to see why the python binding is not building, I guess is unrelated and you have some other outstanding patch? [acme@quaco perf]$ git diff diff --git a/tools/perf/util/Build b/tools/perf/util/Build index 255bc751d19452f2..c97093f47c990b45 100644 --- a/tools/perf/util/Build +++ b/tools/perf/util/Build @@ -153,8 +153,12 @@ perf-$(CONFIG_PERF_BPF_SKEL) += bpf_counter.o perf-$(CONFIG_PERF_BPF_SKEL) += bpf_counter_cgroup.o perf-$(CONFIG_PERF_BPF_SKEL) += bpf_ftrace.o perf-$(CONFIG_PERF_BPF_SKEL) += bpf_off_cpu.o -perf-$(CONFIG_PERF_BPF_SKEL) += bpf_kwork.o perf-$(CONFIG_PERF_BPF_SKEL) += bpf_lock_contention.o + +ifeq ($(CONFIG_TRACEEVENT),y) + perf-$(CONFIG_PERF_BPF_SKEL) += bpf_kwork.o +endif + perf-$(CONFIG_BPF_PROLOGUE) += bpf-prologue.o perf-$(CONFIG_LIBELF) += symbol-elf.o perf-$(CONFIG_LIBELF) += probe-file.o [acme@quaco perf]$ m make: Entering directory '/home/acme/git/perf/tools/perf' BUILD: Doing 'make -j8' parallel build Warning: Kernel ABI header at 'tools/arch/x86/include/asm/msr-index.h' differs from latest version at 'arch/x86/include/asm/msr-index.h' diff -u tools/arch/x86/include/asm/msr-index.h arch/x86/include/asm/msr-index.h Warning: Kernel ABI header at 'tools/arch/arm64/include/uapi/asm/perf_regs.h' differs from latest version at 'arch/arm64/include/uapi/asm/perf_regs.h' diff -u tools/arch/arm64/include/uapi/asm/perf_regs.h arch/arm64/include/uapi/asm/perf_regs.h Warning: Kernel ABI header at 'tools/arch/arm64/include/asm/cputype.h' differs from latest version at 'arch/arm64/include/asm/cputype.h' diff -u tools/arch/arm64/include/asm/cputype.h arch/arm64/include/asm/cputype.h Warning: Kernel ABI header at 'tools/perf/arch/powerpc/entry/syscalls/syscall.tbl' differs from latest version at 'arch/powerpc/kernel/syscalls/syscall.tbl' diff -u tools/perf/arch/powerpc/entry/syscalls/syscall.tbl arch/powerpc/kernel/syscalls/syscall.tbl Makefile.config:1138: No openjdk development package found, please install JDK package, e.g. openjdk-8-jdk, java-1.8.0-openjdk-devel INSTALL libsubcmd_headers INSTALL libapi_headers INSTALL libsymbol_headers INSTALL libperf_headers GEN /tmp/build/perf/python/perf.so INSTALL libbpf_headers INSTALL binaries INSTALL tests INSTALL perf-read-vdso32 INSTALL libexec INSTALL bpf-examples INSTALL perf-archive INSTALL perf-iostat INSTALL strace/groups INSTALL perl-scripts INSTALL python-scripts INSTALL dlfilters INSTALL perf_completion-script INSTALL perf-tip make: Leaving directory '/home/acme/git/perf/tools/perf' 14: 'import perf' in python : FAILED! [acme@quaco perf]$