2024-05-13 17:22:55

by Ingo Molnar

[permalink] [raw]
Subject: Re: Makefile.perf:1149: *** Missing bpftool input for generating vmlinux.h. Stop.


* Ian Rogers <[email protected]> wrote:

> > Was this regression fix propagated to v6.9 in time?
>
> We switched to using the handwritten file in v6.4:
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/tools/perf/util/bpf_skel/vmlinux.h?id=a887466562b425bd6183bf75b523c1477c9fd22d

So there must be some different regression then, as this is readily
reproducible for me on v6.9, as per the build log below - I simply
Ctrl-C-ed a build, and the next build results in:

kepler:~/tip/tools/perf> make clean install
Makefile.perf:1149: *** Missing bpftool input for generating vmlinux.h. Stop.
make: *** [Makefile:90: clean] Error 2
kepler:~/tip/tools/perf>

Thanks,

Ingo

=========>
kepler:~/tip/tools/perf> make clean install
CLEAN x86
CLEAN libapi
CLEAN libbpf
CLEAN libsubcmd
CLEAN libsymbol
CLEAN libperf
CLEAN arm64-sysreg-defs
CLEAN fixdep
CLEAN feature-detect
CLEAN python
CLEAN bpf-skel
CLEAN coresight
CLEAN core-objs
CLEAN core-progs
CLEAN core-gen
CLEAN Documentation
BUILD: Doing 'make -j64' parallel build
HOSTCC fixdep.o
HOSTLD fixdep-in.o
LINK fixdep
Warning: Kernel ABI header differences:
diff -u tools/include/uapi/linux/vhost.h include/uapi/linux/vhost.h
diff -u tools/include/linux/bits.h include/linux/bits.h
diff -u tools/arch/x86/include/asm/cpufeatures.h arch/x86/include/asm/cpufeatures.h
diff -u tools/arch/x86/include/asm/irq_vectors.h arch/x86/include/asm/irq_vectors.h
diff -u tools/arch/x86/include/asm/msr-index.h arch/x86/include/asm/msr-index.h
diff -u tools/perf/arch/x86/entry/syscalls/syscall_64.tbl arch/x86/entry/syscalls/syscall_64.tbl





Auto-detecting system features:
.. dwarf: [ on ]
.. dwarf_getlocations: [ on ]
.. glibc: [ on ]
.. libbfd: [ on ]
.. libbfd-buildid: [ on ]
.. libcap: [ on ]
.. libelf: [ on ]
.. libnuma: [ on ]
.. numa_num_possible_cpus: [ on ]
.. libperl: [ on ]
.. libpython: [ on ]
.. libcrypto: [ on ]
.. libunwind: [ on ]
.. libdw-dwarf-unwind: [ on ]
.. libcapstone: [ on ]
.. zlib: [ on ]
.. lzma: [ on ]
.. get_cpuid: [ on ]
.. bpf: [ on ]
.. libaio: [ on ]
.. libzstd: [ on ]

GEN common-cmds.h
CC perf-read-vdso32
CC perf-read-vdsox32
CC jvmti/libjvmti.o
CC dlfilters/dlfilter-test-api-v0.o
CC dlfilters/dlfilter-test-api-v2.o
CC jvmti/jvmti_agent.o
CC dlfilters/dlfilter-show-cycles.o
CC jvmti/libstring.o
CC jvmti/libctype.o
GEN /home/mingo/tip/tools/perf/arch/arm64/include/generated/asm/sysreg-defs.h
PERF_VERSION = 6.9.g16ae3bebb76c
INSTALL /home/mingo/tip/tools/perf/libsubcmd/include/subcmd/exec-cmd.h
INSTALL /home/mingo/tip/tools/perf/libsubcmd/include/subcmd/help.h
INSTALL /home/mingo/tip/tools/perf/libsubcmd/include/subcmd/pager.h
GEN perf-archive
GEN perf-iostat
INSTALL /home/mingo/tip/tools/perf/libsubcmd/include/subcmd/parse-options.h
CC /home/mingo/tip/tools/perf/libsubcmd/exec-cmd.o
INSTALL /home/mingo/tip/tools/perf/libsubcmd/include/subcmd/run-command.h
CC /home/mingo/tip/tools/perf/libsubcmd/help.o
CC /home/mingo/tip/tools/perf/libsubcmd/pager.o
CC /home/mingo/tip/tools/perf/libsubcmd/parse-options.o
CC /home/mingo/tip/tools/perf/libsubcmd/run-command.o
CC /home/mingo/tip/tools/perf/libsubcmd/sigchain.o
CC /home/mingo/tip/tools/perf/libsubcmd/subcmd-config.o
INSTALL libsubcmd_headers
GEN doc.dep
INSTALL /home/mingo/tip/tools/perf/libapi/include/api/cpu.h
INSTALL /home/mingo/tip/tools/perf/libapi/include/api/debug.h
INSTALL /home/mingo/tip/tools/perf/libsymbol/include/symbol/kallsyms.h
INSTALL /home/mingo/tip/tools/perf/libapi/include/api/io.h
INSTALL /home/mingo/tip/tools/perf/libapi/include/api/fd/array.h
INSTALL /home/mingo/tip/tools/perf/libperf/include/perf/bpf_perf.h
LINK dlfilters/dlfilter-show-cycles.so
INSTALL /home/mingo/tip/tools/perf/libapi/include/api/fs/fs.h
INSTALL /home/mingo/tip/tools/perf/libperf/include/perf/core.h
CC /home/mingo/tip/tools/perf/libsymbol/kallsyms.o
INSTALL /home/mingo/tip/tools/perf/libperf/include/perf/cpumap.h
INSTALL /home/mingo/tip/tools/perf/libapi/include/api/fs/tracing_path.h
CC /home/mingo/tip/tools/perf/libapi/cpu.o
MKDIR /home/mingo/tip/tools/perf/libapi/fd/
INSTALL /home/mingo/tip/tools/perf/libperf/include/perf/threadmap.h
CC /home/mingo/tip/tools/perf/libapi/debug.o
CC /home/mingo/tip/tools/perf/libperf/core.o
INSTALL /home/mingo/tip/tools/perf/libperf/include/perf/evlist.h
MKDIR /home/mingo/tip/tools/perf/libapi/fs/
INSTALL /home/mingo/tip/tools/perf/libperf/include/perf/evsel.h
CC /home/mingo/tip/tools/perf/libperf/cpumap.o
CC /home/mingo/tip/tools/perf/libapi/str_error_r.o
INSTALL /home/mingo/tip/tools/perf/libperf/include/perf/event.h
MKDIR /home/mingo/tip/tools/perf/libapi/fs/
INSTALL /home/mingo/tip/tools/perf/libperf/include/perf/mmap.h
CC /home/mingo/tip/tools/perf/libperf/threadmap.o
MKDIR /home/mingo/tip/tools/perf/libapi/fs/
INSTALL /home/mingo/tip/tools/perf/libperf/include/internal/cpumap.h
CC /home/mingo/tip/tools/perf/libperf/evsel.o
INSTALL /home/mingo/tip/tools/perf/libperf/include/internal/evlist.h
INSTALL /home/mingo/tip/tools/perf/libperf/include/internal/evsel.h
CC /home/mingo/tip/tools/perf/libapi/fd/array.o
CC /home/mingo/tip/tools/perf/libperf/evlist.o
CC /home/mingo/tip/tools/perf/libapi/fs/fs.o
INSTALL /home/mingo/tip/tools/perf/libperf/include/internal/lib.h
INSTALL libsymbol_headers
CC /home/mingo/tip/tools/perf/libperf/mmap.o
INSTALL /home/mingo/tip/tools/perf/libperf/include/internal/mmap.h
INSTALL /home/mingo/tip/tools/perf/libperf/include/internal/rc_check.h
CC /home/mingo/tip/tools/perf/libapi/fs/tracing_path.o
INSTALL libapi_headers
CC /home/mingo/tip/tools/perf/libperf/zalloc.o
INSTALL /home/mingo/tip/tools/perf/libperf/include/internal/threadmap.h
CC /home/mingo/tip/tools/perf/libapi/fs/cgroup.o
INSTALL /home/mingo/tip/tools/perf/libperf/include/internal/xyarray.h
CC /home/mingo/tip/tools/perf/libperf/xyarray.o
CC /home/mingo/tip/tools/perf/libperf/lib.o
GEN /home/mingo/tip/tools/perf/libbpf/bpf_helper_defs.h
INSTALL /home/mingo/tip/tools/perf/libbpf/include/bpf/bpf.h
INSTALL /home/mingo/tip/tools/perf/libbpf/include/bpf/libbpf.h
INSTALL libperf_headers
INSTALL /home/mingo/tip/tools/perf/libbpf/include/bpf/btf.h
INSTALL /home/mingo/tip/tools/perf/libbpf/include/bpf/libbpf_common.h
INSTALL /home/mingo/tip/tools/perf/libbpf/include/bpf/libbpf_legacy.h
INSTALL /home/mingo/tip/tools/perf/libbpf/include/bpf/bpf_helpers.h
INSTALL /home/mingo/tip/tools/perf/libbpf/include/bpf/bpf_tracing.h
INSTALL /home/mingo/tip/tools/perf/libbpf/include/bpf/bpf_endian.h
INSTALL /home/mingo/tip/tools/perf/libbpf/include/bpf/bpf_core_read.h
INSTALL /home/mingo/tip/tools/perf/libbpf/include/bpf/skel_internal.h
INSTALL /home/mingo/tip/tools/perf/libbpf/include/bpf/libbpf_version.h
INSTALL /home/mingo/tip/tools/perf/libbpf/include/bpf/usdt.bpf.h
LINK dlfilters/dlfilter-test-api-v2.so
LINK dlfilters/dlfilter-test-api-v0.so
LD /home/mingo/tip/tools/perf/libapi/fd/libapi-in.o
INSTALL /home/mingo/tip/tools/perf/libbpf/include/bpf/bpf_helper_defs.h
MKDIR /home/mingo/tip/tools/perf/libbpf/staticobjs/
MKDIR /home/mingo/tip/tools/perf/libbpf/staticobjs/
MKDIR /home/mingo/tip/tools/perf/libbpf/staticobjs/
MKDIR /home/mingo/tip/tools/perf/libbpf/staticobjs/
MKDIR /home/mingo/tip/tools/perf/libbpf/staticobjs/
MKDIR /home/mingo/tip/tools/perf/libbpf/staticobjs/
INSTALL libbpf_headers
CC /home/mingo/tip/tools/perf/libbpf/staticobjs/netlink.o
CC /home/mingo/tip/tools/perf/libbpf/staticobjs/bpf.o
CC /home/mingo/tip/tools/perf/libbpf/staticobjs/libbpf.o
LD /home/mingo/tip/tools/perf/libsymbol/libsymbol-in.o
CC /home/mingo/tip/tools/perf/libbpf/staticobjs/btf.o
CC /home/mingo/tip/tools/perf/libbpf/staticobjs/nlattr.o
CC /home/mingo/tip/tools/perf/libbpf/staticobjs/libbpf_errno.o
CC /home/mingo/tip/tools/perf/libbpf/staticobjs/str_error.o
CC /home/mingo/tip/tools/perf/libbpf/staticobjs/bpf_prog_linfo.o
CC /home/mingo/tip/tools/perf/libbpf/staticobjs/libbpf_probes.o
CC /home/mingo/tip/tools/perf/libbpf/staticobjs/hashmap.o
CC /home/mingo/tip/tools/perf/libbpf/staticobjs/btf_dump.o
CC /home/mingo/tip/tools/perf/libbpf/staticobjs/ringbuf.o
CC /home/mingo/tip/tools/perf/libbpf/staticobjs/strset.o
CC /home/mingo/tip/tools/perf/libbpf/staticobjs/linker.o
ASCIIDOC perf-annotate.xml
CC /home/mingo/tip/tools/perf/libbpf/staticobjs/gen_loader.o
CC /home/mingo/tip/tools/perf/libbpf/staticobjs/relo_core.o
CC /home/mingo/tip/tools/perf/libbpf/staticobjs/usdt.o
CC /home/mingo/tip/tools/perf/libbpf/staticobjs/zip.o
CC /home/mingo/tip/tools/perf/libbpf/staticobjs/elf.o
AR /home/mingo/tip/tools/perf/libsymbol/libsymbol.a
CC /home/mingo/tip/tools/perf/libbpf/staticobjs/features.o
LD /home/mingo/tip/tools/perf/libapi/fs/libapi-in.o
LD /home/mingo/tip/tools/perf/libapi/libapi-in.o
LD /home/mingo/tip/tools/perf/libperf/libperf-in.o
AR /home/mingo/tip/tools/perf/libperf/libperf.a
AR /home/mingo/tip/tools/perf/libapi/libapi.a
LD jvmti/jvmti-in.o
LINK libperf-jvmti.so
LD /home/mingo/tip/tools/perf/libsubcmd/libsubcmd-in.o
AR /home/mingo/tip/tools/perf/libsubcmd/libsubcmd.a
ASCIIDOC perf-archive.xml
GEN python/perf.cpython-311-x86_64-linux-gnu.so
ASCIIDOC perf-arm-spe.xml
ASCIIDOC perf-bench.xml
ASCIIDOC perf-buildid-cache.xml
ASCIIDOC perf-buildid-list.xml
ASCIIDOC perf-c2c.xml
ASCIIDOC perf-config.xml
ASCIIDOC perf-daemon.xml
ASCIIDOC perf-data.xml
ASCIIDOC perf-diff.xml
ASCIIDOC perf-dlfilter.xml
^Cmake[2]: *** [Makefile.perf:1121: /home/mingo/tip/tools/perf/util/bpf_skel/.tmp/bootstrap/bpftool] Interrupt
make[4]: *** [/home/mingo/tip/tools/build/Makefile.build:105: /home/mingo/tip/tools/perf/libbpf/staticobjs/libbpf.o] Interrupt
make[3]: *** [Makefile:157: /home/mingo/tip/tools/perf/libbpf/staticobjs/libbpf-in.o] Interrupt
interrupted
make[2]: *** [Makefile.perf:868: /home/mingo/tip/tools/perf/libbpf/libbpf.a] Interrupt
make[3]: *** [Makefile:275: perf-dlfilter.xml] Interrupt
make[3]: *** [Makefile:275: perf-diff.xml] Interrupt
make[2]: *** [Makefile.perf:1072: try-install-man] Interrupt
make[2]: *** [Makefile.perf:681: python/perf.cpython-311-x86_64-linux-gnu.so] Interrupt
make[1]: *** [Makefile.perf:264: sub-make] Interrupt
make: *** [Makefile:113: install] Interrupt

kepler:~/tip/tools/perf> make clean install
Makefile.perf:1149: *** Missing bpftool input for generating vmlinux.h. Stop.
make: *** [Makefile:90: clean] Error 2
kepler:~/tip/tools/perf>



2024-06-05 07:10:33

by Ingo Molnar

[permalink] [raw]
Subject: Re: Makefile.perf:1149: *** Missing bpftool input for generating vmlinux.h. Stop.


* Ingo Molnar <[email protected]> wrote:

>
> * Ian Rogers <[email protected]> wrote:
>
> > > Was this regression fix propagated to v6.9 in time?
> >
> > We switched to using the handwritten file in v6.4:
> > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/tools/perf/util/bpf_skel/vmlinux.h?id=a887466562b425bd6183bf75b523c1477c9fd22d
>
> So there must be some different regression then, as this is readily
> reproducible for me on v6.9, as per the build log below - I simply
> Ctrl-C-ed a build, and the next build results in:
>
> kepler:~/tip/tools/perf> make clean install
> Makefile.perf:1149: *** Missing bpftool input for generating vmlinux.h. Stop.
> make: *** [Makefile:90: clean] Error 2
> kepler:~/tip/tools/perf>

This happens easily on latest upstream v6.10-rc1 as well:

kepler:~/tip> perfi
Makefile.perf:1173: *** Missing bpftool input for generating vmlinux.h. Stop.
make: *** [Makefile:90: clean] Error 2
kepler:~/tip>

What's going on here?

Thanks,

Ingo