So I wanted to say a BIG thanks to Ben as I see in the 5.16 changelog that the perf wrapper script for Debian is now gone! https://metadata.ftp-master.debian.org/changelogs//main/l/linux/linux_6.1~rc8-1~exp1_changelog
``` linux (5.16.3-1~exp1) experimental; urgency=medium ... * linux-perf: Build a single unversioned package of perf, as it is no longer necessary to match the kernel version ``` I notice from trying the experimental version the features are: ``` perf version 6.1.0-rc8 dwarf: [ on ] # HAVE_DWARF_SUPPORT dwarf_getlocations: [ on ] # HAVE_DWARF_GETLOCATIONS_SUPPORT glibc: [ on ] # HAVE_GLIBC_SUPPORT syscall_table: [ on ] # HAVE_SYSCALL_TABLE_SUPPORT libbfd: [ OFF ] # HAVE_LIBBFD_SUPPORT debuginfod: [ OFF ] # HAVE_DEBUGINFOD_SUPPORT libelf: [ on ] # HAVE_LIBELF_SUPPORT libnuma: [ on ] # HAVE_LIBNUMA_SUPPORT numa_num_possible_cpus: [ on ] # HAVE_LIBNUMA_SUPPORT libperl: [ on ] # HAVE_LIBPERL_SUPPORT libpython: [ on ] # HAVE_LIBPYTHON_SUPPORT libslang: [ on ] # HAVE_SLANG_SUPPORT libcrypto: [ OFF ] # HAVE_LIBCRYPTO_SUPPORT libunwind: [ on ] # HAVE_LIBUNWIND_SUPPORT libdw-dwarf-unwind: [ on ] # HAVE_DWARF_SUPPORT zlib: [ on ] # HAVE_ZLIB_SUPPORT lzma: [ on ] # HAVE_LZMA_SUPPORT get_cpuid: [ on ] # HAVE_AUXTRACE_SUPPORT bpf: [ on ] # HAVE_LIBBPF_SUPPORT aio: [ on ] # HAVE_AIO_SUPPORT zstd: [ OFF ] # HAVE_ZSTD_SUPPORT libpfm4: [ OFF ] # HAVE_LIBPFM ``` I believe this is a step up as previously libpython was disabled. I had a few things to ask wrt this thread and getting the best possible Debian experience: - in Linux 6.2 the libtraceevent will need to become an external library dependency - are there issues with debuginfod/zstd enablement? libbfd has licensing issues. libcrypto is only used by the JIT support, but still may be nice to enable. - wrt packaging, the kernel has a deb-pkg build target, should we move the debian packaging to something like a perf-deb-pkg similar to the perf-tar-src-pkg target? This thread was previously proposing using the source releases Arnaldo makes, this would be possible for a deb-pkg target if the logic were contained in the source tar ball. I believe what is currently being built is from a kernel tree, but perhaps a build target adds consistency with the kernel, allows contributors to update the Debian related files and serves as an example for similar packaging of other kernel tools, like bpftool. - are there some residual wrapper artifacts in the package, for example: ``` $ dpkg -L linux-perf /. /usr /usr/bin /usr/bin/perf package diverts others to: /usr/bin/perf.wrapper ... package diverts others to: /usr/share/bash-completion/completions/perf.wrapper ... package diverts others to: /usr/share/man/man1/perf.wrapper.1.gz ... ``` Another BIG thank you to Ben! Ian