From: Mingwei Zhang Date: Sat, 6 Dec 2025 00:16:47 +0000 (-0800) Subject: perf/x86/core: Plumb mediated PMU capability from x86_pmu to x86_pmu_cap X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c8824a95d9673763a0a9d642f8c79b2162296923;p=thirdparty%2Flinux.git perf/x86/core: Plumb mediated PMU capability from x86_pmu to x86_pmu_cap Plumb mediated PMU capability to x86_pmu_cap in order to let any kernel entity such as KVM know that host PMU support mediated PMU mode and has the implementation. Signed-off-by: Mingwei Zhang Signed-off-by: Sean Christopherson Signed-off-by: Peter Zijlstra (Intel) Tested-by: Xudong Hao Link: https://patch.msgid.link/20251206001720.468579-12-seanjc@google.com --- diff --git a/arch/x86/events/core.c b/arch/x86/events/core.c index 3f7838810cc5d..df7a32be9914b 100644 --- a/arch/x86/events/core.c +++ b/arch/x86/events/core.c @@ -3110,6 +3110,7 @@ void perf_get_x86_pmu_capability(struct x86_pmu_capability *cap) cap->events_mask = (unsigned int)x86_pmu.events_maskl; cap->events_mask_len = x86_pmu.events_mask_len; cap->pebs_ept = x86_pmu.pebs_ept; + cap->mediated = !!(pmu.capabilities & PERF_PMU_CAP_MEDIATED_VPMU); } EXPORT_SYMBOL_FOR_KVM(perf_get_x86_pmu_capability); diff --git a/arch/x86/include/asm/perf_event.h b/arch/x86/include/asm/perf_event.h index fb7b261357bfb..0d9af4135e0af 100644 --- a/arch/x86/include/asm/perf_event.h +++ b/arch/x86/include/asm/perf_event.h @@ -301,6 +301,7 @@ struct x86_pmu_capability { unsigned int events_mask; int events_mask_len; unsigned int pebs_ept :1; + unsigned int mediated :1; }; /*