[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240402022118.1046049-1-andrii@kernel.org>
Date: Mon,  1 Apr 2024 19:21:14 -0700
From: Andrii Nakryiko <andrii@...nel.org>
To: x86@...nel.org,
	peterz@...radead.org,
	mingo@...hat.com,
	tglx@...utronix.de
Cc: bpf@...r.kernel.org,
	linux-kernel@...r.kernel.org,
	jolsa@...nel.org,
	song@...nel.org,
	kernel-team@...a.com,
	Andrii Nakryiko <andrii@...nel.org>
Subject: [PATCH v5 0/4] perf/x86/amd: add LBR capture support outside of hardware events
Add AMD-specific implementation of perf_snapshot_branch_stack static call that
allows LBR capture from arbitrary points in the kernel. This is utilized by
BPF programs. See patch #3 for all the details.
Patches #1 and #2 are preparatory steps to ensure LBR freezing is completely
inlined and have no branches, to minimize LBR snapshot contamination.
Patch #4 removes an artificial restriction on perf events with LBR enabled.
v4->v5:
  - rebased on top of perf/urgent branch to resolve conflicts with
    598c2fafc06f ("perf/x86/amd/lbr: Use freeze based on availability").
Andrii Nakryiko (4):
  perf/x86/amd: ensure amd_pmu_core_disable_all() is always inlined
  perf/x86/amd: avoid taking branches before disabling LBR
  perf/x86/amd: support capturing LBR from software events
  perf/x86/amd: don't reject non-sampling events with configured LBR
 arch/x86/events/amd/core.c   | 37 +++++++++++++++++++++++++++++++++++-
 arch/x86/events/amd/lbr.c    | 13 +------------
 arch/x86/events/perf_event.h | 13 +++++++++++++
 3 files changed, 50 insertions(+), 13 deletions(-)
-- 
2.43.0
Powered by blists - more mailing lists