[GIT PULL] perf tools fixes for v6.2: 1st batch

Arnaldo Carvalho de Melo
2023-01-06T14:23:52Z

Hi Linus,

Please consider pulling, there are some more being tested but
that should sit in linux-next/pending-fixes for a while.

Please let me know if you think anything should be reworked,

Best regards,

- Arnaldo

The following changes since commit 88603b6dc419445847923fcb7fe5080067a30f98:

Linux 6.2-rc2 (2023-01-01 13:53:16 -0800)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git tags/perf-tools-fixes-for-v6.1-1-2023-01-06

for you to fetch changes up to 481028dbf1daa2808e1be06f6a865b5fe5939efc:

perf tools: Fix build on uClibc systems by adding missing sys/types.h include (2023-01-04 16:44:01 -0300)

----------------------------------------------------------------
perf tools fixes for v6.2: 1st batch

- Fix segfault when trying to process tracepoints present in a perf.data file
and not linked with libtraceevent.

- Fix build on uClibc systems by adding missing sys/types.h include, that was
being obtained indirectly which stopped being the case when tools/lib/traceevent
was removed.

- Don't show commands in 'perf help' that depend on linking with libtraceevent
when not building with that library, which is now a possibility since we
no longer ship a copy in tools/lib/traceevent.

- Fix failure in 'perf test' entry testing the combination of 'perf probe' user
space function + 'perf record' + 'perf script' where it expects a backtrace
leading to glibc's inet_pton() from 'ping' that now happens more than once with
glibc 2.35 for IPv6 addreses.

- Fix for the inet_pton perf test on s/390 where 'text_to_binary_address' now
appears on the backtrace.

- Fix build error on riscv due to missing header for 'struct perf_sample'.

- Fix 'make -C tools perf_install' install variant by not propagating the 'subdir'
to submakes for the 'install_headers' targets.

- Fix handling of unsupported cgroup events when using BPF counters in 'perf stat'.

- Count all cgroups, not just the last one when using 'perf stat
--for-each-cgroup' with --bpf-counters. This makes the output using BPF
counters match the output without using it, which was the intention all along,
the output should be the same using --bpf-counters or not.

- Fix 'perf lock contention' core dump related to not finding the
"__sched_text_end" symbol on s/390.

- Fix build failure when HEAD is signed: exclude the signature from the version
string.

- Add missing closedir() calls to in perf_data__open_dir(), plugging a fd leak.

Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>

----------------------------------------------------------------
Ahelenia Ziemiańska (1):
perf tools: Don't include signature in version strings

Arnaldo Carvalho de Melo (2):
perf tools: Fix segfault when trying to process tracepoints in perf.data and not linked with libtraceevent
perf test record_probe_libc_inet_pton: Fix failure due to extra inet_pton() backtrace in glibc >= 2.35

Eric Lin (1):
perf tools riscv: Fix build error on riscv due to missing header for 'struct perf_sample'

Ian Rogers (1):
perf build: Don't propagate subdir to submakes for install_headers

Jesus Sanchez-Palencia (1):
perf tools: Fix build on uClibc systems by adding missing sys/types.h include

Miaoqian Lin (1):
perf tools: Fix resources leak in perf_data__open_dir()

Namhyung Kim (2):
perf stat: Fix handling of unsupported cgroup events when using BPF counters
perf stat: Fix handling of --for-each-cgroup with --bpf-counters to match non BPF mode

Thomas Richter (2):
perf lock contention: Fix core dump related to not finding the "__sched_text_end" symbol on s/390
perf test record_probe_libc_inet_pton: Fix test on s/390 where 'text_to_binary_address' now appears on the backtrace

Yang Jihong (1):
perf help: Use HAVE_LIBTRACEEVENT to filter out unsupported commands

tools/perf/Documentation/Makefile | 2 +-
tools/perf/Makefile.perf | 10 +++++-----
tools/perf/arch/riscv/util/unwind-libdw.c | 2 +-
tools/perf/builtin-lock.c | 2 ++
tools/perf/command-list.txt | 10 +++++-----
.../tests/shell/record+probe_libc_inet_pton.sh | 3 ++-
tools/perf/util/PERF-VERSION-GEN | 2 +-
tools/perf/util/bpf_counter_cgroup.c | 14 +++----------
tools/perf/util/cgroup.c | 23 +++++++++++++++++-----
tools/perf/util/data.c | 2 ++
tools/perf/util/generate-cmdlist.sh | 19 ++++++++++++++++--
tools/perf/util/sort.c | 12 +++++++++++
tools/perf/util/trace-event.h | 1 +
13 files changed, 70 insertions(+), 32 deletions(-)