* [PATCH] perf tools: Fix auto-complete on aarch64
@ 2023-02-07 3:50 ` Yicong Yang
0 siblings, 0 replies; 6+ messages in thread
From: Yicong Yang @ 2023-02-07 3:50 UTC (permalink / raw)
To: acme, mark.rutland, peterz, mingo, alexander.shishkin, jolsa,
namhyung, yao.jin, linux-perf-users, linux-kernel
Cc: linux-arm-kernel, yangyicong, linuxarm, prime.zeng
From: Yicong Yang <yangyicong@hisilicon.com>
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 test /sys/bus/event_source/devices/cpu/events on aarch64
machine.
Fixes: 74cd5815d9af ("perf tool: Improve bash command line auto-complete for multiple events with comma")
Signed-off-by: Yicong Yang <yangyicong@hisilicon.com>
---
tools/perf/perf-completion.sh | 11 ++++++++---
1 file changed, 8 insertions(+), 3 deletions(-)
diff --git a/tools/perf/perf-completion.sh b/tools/perf/perf-completion.sh
index fdf75d45efff..978249d7868c 100644
--- a/tools/perf/perf-completion.sh
+++ b/tools/perf/perf-completion.sh
@@ -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
--
2.24.0
^ permalink raw reply related [flat|nested] 6+ messages in thread* [PATCH] perf tools: Fix auto-complete on aarch64
@ 2023-02-07 3:50 ` Yicong Yang
0 siblings, 0 replies; 6+ messages in thread
From: Yicong Yang @ 2023-02-07 3:50 UTC (permalink / raw)
To: acme, mark.rutland, peterz, mingo, alexander.shishkin, jolsa,
namhyung, yao.jin, linux-perf-users, linux-kernel
Cc: linux-arm-kernel, yangyicong, linuxarm, prime.zeng
From: Yicong Yang <yangyicong@hisilicon.com>
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 test /sys/bus/event_source/devices/cpu/events on aarch64
machine.
Fixes: 74cd5815d9af ("perf tool: Improve bash command line auto-complete for multiple events with comma")
Signed-off-by: Yicong Yang <yangyicong@hisilicon.com>
---
tools/perf/perf-completion.sh | 11 ++++++++---
1 file changed, 8 insertions(+), 3 deletions(-)
diff --git a/tools/perf/perf-completion.sh b/tools/perf/perf-completion.sh
index fdf75d45efff..978249d7868c 100644
--- a/tools/perf/perf-completion.sh
+++ b/tools/perf/perf-completion.sh
@@ -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
--
2.24.0
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply related [flat|nested] 6+ messages in thread* Re: [PATCH] perf tools: Fix auto-complete on aarch64
2023-02-07 3:50 ` Yicong Yang
@ 2023-02-08 10:35 ` James Clark
-1 siblings, 0 replies; 6+ messages in thread
From: James Clark @ 2023-02-08 10:35 UTC (permalink / raw)
To: Yicong Yang, acme
Cc: linux-arm-kernel, yangyicong, linuxarm, prime.zeng, mark.rutland,
peterz, mingo, alexander.shishkin, jolsa, namhyung, yao.jin,
linux-perf-users, linux-kernel
On 07/02/2023 03:50, Yicong Yang wrote:
> From: Yicong Yang <yangyicong@hisilicon.com>
>
> 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 test /sys/bus/event_source/devices/cpu/events on aarch64
> machine.
>
> Fixes: 74cd5815d9af ("perf tool: Improve bash command line auto-complete for multiple events with comma")
> Signed-off-by: Yicong Yang <yangyicong@hisilicon.com>
> ---
> tools/perf/perf-completion.sh | 11 ++++++++---
> 1 file changed, 8 insertions(+), 3 deletions(-)
>
Reviewed-by: James Clark <james.clark@arm.com>
> diff --git a/tools/perf/perf-completion.sh b/tools/perf/perf-completion.sh
> index fdf75d45efff..978249d7868c 100644
> --- a/tools/perf/perf-completion.sh
> +++ b/tools/perf/perf-completion.sh
> @@ -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
^ permalink raw reply [flat|nested] 6+ messages in thread* Re: [PATCH] perf tools: Fix auto-complete on aarch64
@ 2023-02-08 10:35 ` James Clark
0 siblings, 0 replies; 6+ messages in thread
From: James Clark @ 2023-02-08 10:35 UTC (permalink / raw)
To: Yicong Yang, acme
Cc: linux-arm-kernel, yangyicong, linuxarm, prime.zeng, mark.rutland,
peterz, mingo, alexander.shishkin, jolsa, namhyung, yao.jin,
linux-perf-users, linux-kernel
On 07/02/2023 03:50, Yicong Yang wrote:
> From: Yicong Yang <yangyicong@hisilicon.com>
>
> 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 test /sys/bus/event_source/devices/cpu/events on aarch64
> machine.
>
> Fixes: 74cd5815d9af ("perf tool: Improve bash command line auto-complete for multiple events with comma")
> Signed-off-by: Yicong Yang <yangyicong@hisilicon.com>
> ---
> tools/perf/perf-completion.sh | 11 ++++++++---
> 1 file changed, 8 insertions(+), 3 deletions(-)
>
Reviewed-by: James Clark <james.clark@arm.com>
> diff --git a/tools/perf/perf-completion.sh b/tools/perf/perf-completion.sh
> index fdf75d45efff..978249d7868c 100644
> --- a/tools/perf/perf-completion.sh
> +++ b/tools/perf/perf-completion.sh
> @@ -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
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 6+ messages in thread* Re: [PATCH] perf tools: Fix auto-complete on aarch64
2023-02-08 10:35 ` James Clark
@ 2023-02-08 13:39 ` Arnaldo Carvalho de Melo
-1 siblings, 0 replies; 6+ messages in thread
From: Arnaldo Carvalho de Melo @ 2023-02-08 13:39 UTC (permalink / raw)
To: James Clark
Cc: Yicong Yang, linux-arm-kernel, yangyicong, linuxarm, prime.zeng,
mark.rutland, peterz, mingo, alexander.shishkin, jolsa, namhyung,
yao.jin, linux-perf-users, linux-kernel
Em Wed, Feb 08, 2023 at 10:35:17AM +0000, James Clark escreveu:
>
>
> On 07/02/2023 03:50, Yicong Yang wrote:
> > From: Yicong Yang <yangyicong@hisilicon.com>
> >
> > 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 test /sys/bus/event_source/devices/cpu/events on aarch64
> > machine.
> >
> > Fixes: 74cd5815d9af ("perf tool: Improve bash command line auto-complete for multiple events with comma")
> > Signed-off-by: Yicong Yang <yangyicong@hisilicon.com>
> > ---
> > tools/perf/perf-completion.sh | 11 ++++++++---
> > 1 file changed, 8 insertions(+), 3 deletions(-)
> >
>
> Reviewed-by: James Clark <james.clark@arm.com>
Thanks, applied.
- Arnaldo
> > diff --git a/tools/perf/perf-completion.sh b/tools/perf/perf-completion.sh
> > index fdf75d45efff..978249d7868c 100644
> > --- a/tools/perf/perf-completion.sh
> > +++ b/tools/perf/perf-completion.sh
> > @@ -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
--
- Arnaldo
^ permalink raw reply [flat|nested] 6+ messages in thread* Re: [PATCH] perf tools: Fix auto-complete on aarch64
@ 2023-02-08 13:39 ` Arnaldo Carvalho de Melo
0 siblings, 0 replies; 6+ messages in thread
From: Arnaldo Carvalho de Melo @ 2023-02-08 13:39 UTC (permalink / raw)
To: James Clark
Cc: Yicong Yang, linux-arm-kernel, yangyicong, linuxarm, prime.zeng,
mark.rutland, peterz, mingo, alexander.shishkin, jolsa, namhyung,
yao.jin, linux-perf-users, linux-kernel
Em Wed, Feb 08, 2023 at 10:35:17AM +0000, James Clark escreveu:
>
>
> On 07/02/2023 03:50, Yicong Yang wrote:
> > From: Yicong Yang <yangyicong@hisilicon.com>
> >
> > 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 test /sys/bus/event_source/devices/cpu/events on aarch64
> > machine.
> >
> > Fixes: 74cd5815d9af ("perf tool: Improve bash command line auto-complete for multiple events with comma")
> > Signed-off-by: Yicong Yang <yangyicong@hisilicon.com>
> > ---
> > tools/perf/perf-completion.sh | 11 ++++++++---
> > 1 file changed, 8 insertions(+), 3 deletions(-)
> >
>
> Reviewed-by: James Clark <james.clark@arm.com>
Thanks, applied.
- Arnaldo
> > diff --git a/tools/perf/perf-completion.sh b/tools/perf/perf-completion.sh
> > index fdf75d45efff..978249d7868c 100644
> > --- a/tools/perf/perf-completion.sh
> > +++ b/tools/perf/perf-completion.sh
> > @@ -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
--
- Arnaldo
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2023-02-08 13:40 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-02-07 3:50 [PATCH] perf tools: Fix auto-complete on aarch64 Yicong Yang
2023-02-07 3:50 ` Yicong Yang
2023-02-08 10:35 ` James Clark
2023-02-08 10:35 ` James Clark
2023-02-08 13:39 ` Arnaldo Carvalho de Melo
2023-02-08 13:39 ` Arnaldo Carvalho de Melo
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.