[PATCH v1 1/3] perf completion: Restrict completion of events to events

From: Ian Rogers
Date: Tue Sep 05 2023 - 14:18:54 EST


perf list will list libpfm4 events and metrics which aren't valid
options to the '-e' option. Restrict the events gathered so that
invalid ones aren't shown.

Before:
$ perf stat -e <tab><tab>
Display all 633 possibilities? (y or n)

After:
$ perf stat -e <tab><tab>
Display all 375 possibilities? (y or n)

Signed-off-by: Ian Rogers <irogers@xxxxxxxxxx>
---
tools/perf/perf-completion.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/perf/perf-completion.sh b/tools/perf/perf-completion.sh
index 978249d7868c..40cfc30ad7ad 100644
--- a/tools/perf/perf-completion.sh
+++ b/tools/perf/perf-completion.sh
@@ -164,7 +164,7 @@ __perf_main ()
$prev_skip_opts == @(record|stat|top) ]]; then

local cur1=${COMP_WORDS[COMP_CWORD]}
- local raw_evts=$($cmd list --raw-dump)
+ local raw_evts=$($cmd list --raw-dump hw sw cache tracepoint pmu sdt)
local arr s tmp result cpu_evts

# aarch64 doesn't have /sys/bus/event_source/devices/cpu/events
--
2.42.0.283.g2d96d420d3-goog