[GIT PULL] perf tools fixes for v6.5

From: Arnaldo Carvalho de Melo
Date: Tue Jul 18 2023 - 15:46:25 EST


Hi Linus,

Please consider pulling,

Best regards,

- Arnaldo

The following changes since commit 3f01e9fed8454dcd89727016c3e5b2fbb8f8e50c:

Merge tag 'linux-watchdog-6.5-rc2' of git://www.linux-watchdog.org/linux-watchdog (2023-07-10 10:04:26 -0700)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/perf/perf-tools.git tags/perf-tools-fixes-for-v6.5-1-2023-07-18

for you to fetch changes up to 2480232c61b888a160153b9022858ac8c4362d5f:

perf test task_exit: No need for a cycles event to check if we get an PERF_RECORD_EXIT (2023-07-17 10:27:44 -0300)

----------------------------------------------------------------
perf tools fixes for v6.5:

- Don't group events when computing metrics that require more than the
maximum number of simultaneously enabled events on AMD systems.

- Fix multi CU handling in 'perf probe', add a 'perf test' entry to regress
test it.

- Make the 'perf test task_exit' stop generating samples by using the
'dummy' event, all it is testing is if a PERF_RECORD_EXIT is generated
at the end of a perf session. This makes this perf test to stop
sometimes failing on some systems due to a full ring buffer.

- Avoid SEGV if PMU lookup fails for legacy cache terms.

- Fix libsubcmd SEGV/use-after-free when commands aren't excluded.

- Fix OpenCSD (ARM64's CoreSight hardware tracing) library path resolution when
specifying CSLIBS= in the make command line.

- Fix broken feature check for libtracefs due to external lib changes,
use the provided pkgconfig file instead to future proof it.

- Sync drm, fcntl, kvm, mount, prctl, socket, vhost, asound, arm64's
cputype headers with the kernel sources, in some cases this made the
tools become aware of new kernel APIs such as ioctls and the cachestat
sysctl.

Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

----------------------------------------------------------------
Arnaldo Carvalho de Melo (11):
tools headers UAPI: Sync drm/i915_drm.h with the kernel sources
tools headers UAPI: Sync files changed by new cachestat syscall with the kernel sources
tools headers uapi: Sync linux/fcntl.h with the kernel sources
tools headers UAPI: Sync linux/kvm.h with the kernel sources
tools include UAPI: Sync linux/mount.h copy with the kernel sources
tools headers UAPI: Sync linux/prctl.h with the kernel sources
perf beauty: Update copy of linux/socket.h with the kernel sources
tools include UAPI: Sync linux/vhost.h with the kernel sources
tools include UAPI: Sync the sound/asound.h copy with the kernel sources
tools headers arm64: Sync arm64's cputype.h with the kernel sources
perf test task_exit: No need for a cycles event to check if we get an PERF_RECORD_EXIT

Georg Müller (2):
perf probe: Add test for regression introduced by switch to die_get_decl_file()
perf probe: Read DWARF files from the correct CU

Ian Rogers (2):
libsubcmd: Avoid SEGV/use-after-free when commands aren't excluded
perf parse-events: Avoid SEGV if PMU lookup fails for legacy cache terms

James Clark (1):
perf build: Fix library not found error when using CSLIBS

Sandipan Das (1):
perf vendor events amd: Fix large metrics

Thomas Richter (1):
perf build: Fix broken feature check for libtracefs due to external lib changes

tools/arch/arm64/include/asm/cputype.h | 8 ++
tools/build/feature/Makefile | 2 +-
tools/include/uapi/asm-generic/unistd.h | 5 +-
tools/include/uapi/drm/i915_drm.h | 95 +++++++++++++++++++++-
tools/include/uapi/linux/fcntl.h | 5 ++
tools/include/uapi/linux/kvm.h | 6 +-
tools/include/uapi/linux/mman.h | 14 ++++
tools/include/uapi/linux/mount.h | 3 +-
tools/include/uapi/linux/prctl.h | 11 +++
tools/include/uapi/linux/vhost.h | 31 +++++++
tools/include/uapi/sound/asound.h | 81 +++++++++++++++++-
tools/lib/subcmd/help.c | 18 ++--
tools/perf/Makefile.config | 4 +-
.../perf/arch/mips/entry/syscalls/syscall_n64.tbl | 1 +
tools/perf/arch/powerpc/entry/syscalls/syscall.tbl | 1 +
tools/perf/arch/s390/entry/syscalls/syscall.tbl | 1 +
tools/perf/arch/x86/entry/syscalls/syscall_64.tbl | 1 +
.../pmu-events/arch/x86/amdzen1/recommended.json | 3 +-
.../pmu-events/arch/x86/amdzen2/recommended.json | 3 +-
.../pmu-events/arch/x86/amdzen3/recommended.json | 3 +-
.../tests/shell/test_uprobe_from_different_cu.sh | 77 ++++++++++++++++++
tools/perf/tests/task-exit.c | 4 +-
tools/perf/trace/beauty/include/linux/socket.h | 5 ++
tools/perf/trace/beauty/move_mount_flags.sh | 2 +-
tools/perf/trace/beauty/msg_flags.c | 8 ++
tools/perf/util/dwarf-aux.c | 4 +-
tools/perf/util/parse-events.c | 8 ++
27 files changed, 381 insertions(+), 23 deletions(-)
create mode 100755 tools/perf/tests/shell/test_uprobe_from_different_cu.sh