perf tools: Fix auto-complete on aarch64
[ Upstream commitffd1240e8f
] On aarch64 CPU related events are not under event_source/devices/cpu/events, they're under event_source/devices/armv8_pmuv3_0/events on my machine. Using current auto-complete script will generate below error: [root@localhost bin]# perf stat -e ls: cannot access '/sys/bus/event_source/devices/cpu/events': No such file or directory Fix this by not testing /sys/bus/event_source/devices/cpu/events on aarch64 machine. Fixes:74cd5815d9
("perf tool: Improve bash command line auto-complete for multiple events with comma") Reviewed-by: James Clark <james.clark@arm.com> Signed-off-by: Yicong Yang <yangyicong@hisilicon.com> Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com> Cc: Ingo Molnar <mingo@redhat.com> Cc: Jin Yao <yao.jin@linux.intel.com> Cc: Jiri Olsa <jolsa@kernel.org> Cc: Mark Rutland <mark.rutland@arm.com> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: linux-arm-kernel@lists.infradead.org Cc: linuxarm@huawei.com Cc: prime.zeng@hisilicon.com Link: https://lore.kernel.org/r/20230207035057.43394-1-yangyicong@huawei.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
Родитель
f9a35cd8f0
Коммит
1f3d6661f3
|
@ -165,7 +165,12 @@ __perf_main ()
|
|||
|
||||
local cur1=${COMP_WORDS[COMP_CWORD]}
|
||||
local raw_evts=$($cmd list --raw-dump)
|
||||
local arr s tmp result
|
||||
local arr s tmp result cpu_evts
|
||||
|
||||
# aarch64 doesn't have /sys/bus/event_source/devices/cpu/events
|
||||
if [[ `uname -m` != aarch64 ]]; then
|
||||
cpu_evts=$(ls /sys/bus/event_source/devices/cpu/events)
|
||||
fi
|
||||
|
||||
if [[ "$cur1" == */* && ${cur1#*/} =~ ^[A-Z] ]]; then
|
||||
OLD_IFS="$IFS"
|
||||
|
@ -183,9 +188,9 @@ __perf_main ()
|
|||
fi
|
||||
done
|
||||
|
||||
evts=${result}" "$(ls /sys/bus/event_source/devices/cpu/events)
|
||||
evts=${result}" "${cpu_evts}
|
||||
else
|
||||
evts=${raw_evts}" "$(ls /sys/bus/event_source/devices/cpu/events)
|
||||
evts=${raw_evts}" "${cpu_evts}
|
||||
fi
|
||||
|
||||
if [[ "$cur1" == , ]]; then
|
||||
|
|
Загрузка…
Ссылка в новой задаче