Re: Getting the latest and greatest Linux perf features on every Debian kernel
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
Reply to: