[PATCH] perf arm-spe: Use advertised caps/min_interval as default sample_period

German Gomez german.gomez at arm.com
Mon Feb 21 09:10:42 PST 2022


When recording SPE traces, the default sample_period is currently being
set to 1 in the perf_event_attr fields, instead of the value advertised
in '/sys/devices/arm_spe_0/caps/min_interval':

Before:

$ perf record -e arm_spe// -vv -- sleep 1
[...]
  { sample_period, sample_freq }   1
[...]

Use the value from the above sysfs location as a more sensible default
(it was already being read, but the value not being used)

After:

$ perf record -e arm_spe// -vv -- sleep 1
[...]
  { sample_period, sample_freq }   1024
[...]

Signed-off-by: German Gomez <german.gomez at arm.com>
---
 tools/perf/arch/arm64/util/arm-spe.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/perf/arch/arm64/util/arm-spe.c b/tools/perf/arch/arm64/util/arm-spe.c
index 2100d46cc..5860bbaea 100644
--- a/tools/perf/arch/arm64/util/arm-spe.c
+++ b/tools/perf/arch/arm64/util/arm-spe.c
@@ -158,7 +158,7 @@ static int arm_spe_recording_options(struct auxtrace_record *itr,
 				return -EINVAL;
 			}
 			evsel->core.attr.freq = 0;
-			evsel->core.attr.sample_period = 1;
+			evsel->core.attr.sample_period = arm_spe_pmu->default_config->sample_period;
 			arm_spe_evsel = evsel;
 			opts->full_auxtrace = true;
 		}
-- 
2.25.1




More information about the linux-arm-kernel mailing list