From: Adrian Hunter Date: Tue, 22 Oct 2024 15:59:10 +0000 (+0300) Subject: perf/x86/intel: Do not enable large PEBS for events with aux actions or aux sampling X-Git-Tag: v6.13-rc1~179^2~7 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=0d5eb14c1e2ed4a8413458cb3b779f215ff214aa;p=thirdparty%2Fkernel%2Flinux.git perf/x86/intel: Do not enable large PEBS for events with aux actions or aux sampling Events with aux actions or aux sampling expect the PMI to coincide with the event, which does not happen for large PEBS, so do not enable large PEBS in that case. Signed-off-by: Adrian Hunter Signed-off-by: Peter Zijlstra (Intel) Reviewed-by: Andi Kleen Link: https://lkml.kernel.org/r/20241022155920.17511-5-adrian.hunter@intel.com --- diff --git a/arch/x86/events/intel/core.c b/arch/x86/events/intel/core.c index 7ca40002a19b8..bb284aff7bfd6 100644 --- a/arch/x86/events/intel/core.c +++ b/arch/x86/events/intel/core.c @@ -3962,8 +3962,8 @@ static int intel_pmu_hw_config(struct perf_event *event) if (!(event->attr.freq || (event->attr.wakeup_events && !event->attr.watermark))) { event->hw.flags |= PERF_X86_EVENT_AUTO_RELOAD; - if (!(event->attr.sample_type & - ~intel_pmu_large_pebs_flags(event))) { + if (!(event->attr.sample_type & ~intel_pmu_large_pebs_flags(event)) && + !has_aux_action(event)) { event->hw.flags |= PERF_X86_EVENT_LARGE_PEBS; event->attach_state |= PERF_ATTACH_SCHED_CB; }