[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20191220143025.33853-16-andrew.murray@arm.com>
Date: Fri, 20 Dec 2019 14:30:22 +0000
From: Andrew Murray <andrew.murray@....com>
To: Marc Zyngier <marc.zyngier@....com>,
Catalin Marinas <catalin.marinas@....com>,
Will Deacon <will.deacon@....com>
Cc: Sudeep Holla <sudeep.holla@....com>, kvmarm@...ts.cs.columbia.edu,
linux-arm-kernel@...ts.infradead.org, kvm@...r.kernel.org,
linux-kernel@...r.kernel.org, Mark Rutland <mark.rutland@....com>
Subject: [PATCH v2 15/18] perf: arm_spe: Handle guest/host exclusion flags
A side effect of supporting the SPE in guests is that we prevent the
host from collecting data whilst inside a guest thus creating a black-out
window. This occurs because instead of emulating the SPE, we share it
with our guests.
Let's accurately describe our capabilities by using the perf exclude
flags to prevent !exclude_guest and exclude_host flags from being used.
Signed-off-by: Andrew Murray <andrew.murray@....com>
---
drivers/perf/arm_spe_pmu.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/perf/arm_spe_pmu.c b/drivers/perf/arm_spe_pmu.c
index 2d24af4cfcab..3703dbf459de 100644
--- a/drivers/perf/arm_spe_pmu.c
+++ b/drivers/perf/arm_spe_pmu.c
@@ -679,6 +679,9 @@ static int arm_spe_pmu_event_init(struct perf_event *event)
if (attr->exclude_idle)
return -EOPNOTSUPP;
+ if (!attr->exclude_guest || attr->exclude_host)
+ return -EOPNOTSUPP;
+
/*
* Feedback-directed frequency throttling doesn't work when we
* have a buffer of samples. We'd need to manually count the
--
2.21.0
Powered by blists - more mailing lists