All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] perf/tests: Fix test case 83 on s390
@ 2022-07-20 12:34 Thomas Richter
       [not found] ` <CAP-5=fWeUh2hyGAqc4XidJZ7X06f4=MojyQwuOtbL3cs3u+T=w@mail.gmail.com>
  0 siblings, 1 reply; 2+ messages in thread
From: Thomas Richter @ 2022-07-20 12:34 UTC (permalink / raw)
  To: linux-kernel, linux-perf-users, acme
  Cc: svens, gor, sumanthk, hca, Thomas Richter

Perf test case 83: perf stat CSV output linter might fail
on s390.
The reason for this is the output of the command

 ./perf stat -x, -A -a --no-merge true

which depends on a .config file setting. When CONFIG_SCHED_TOPOLOGY
is set, the output of above perf command is

   CPU0,1.50,msec,cpu-clock,1502781,100.00,1.052,CPUs utilized

When CONFIG_SCHED_TOPOLOGY is *NOT* set the output of above perf
command is

   0.95,msec,cpu-clock,949800,100.00,1.060,CPUs utilized

Fix the test case to accept both output formats.

Output before:
 # perf test 83
 83: perf stat CSV output linter       : FAILED!
 #

Output after:
 # ./perf test 83
 83: perf stat CSV output linter       : Ok
 #

Fixes: ec906102e5b7 ("perf test: Fix "perf stat CSV output linter" test on s390")

Signed-off-by: Thomas Richter <tmricht@linux.ibm.com>
Acked-by: Sumanth Korikkar <sumanthk@linux.ibm.com>
---
 tools/perf/tests/shell/stat+csv_output.sh | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/tools/perf/tests/shell/stat+csv_output.sh b/tools/perf/tests/shell/stat+csv_output.sh
index 38c26f3ef4c1..eb5196f58190 100755
--- a/tools/perf/tests/shell/stat+csv_output.sh
+++ b/tools/perf/tests/shell/stat+csv_output.sh
@@ -8,7 +8,8 @@ set -e
 
 function commachecker()
 {
-	local -i cnt=0 exp=0
+	local -i cnt=0
+	local exp=0
 
 	case "$1"
 	in "--no-args")		exp=6
@@ -17,7 +18,7 @@ function commachecker()
 	;; "--interval")	exp=7
 	;; "--per-thread")	exp=7
 	;; "--system-wide-no-aggr")	exp=7
-				[ $(uname -m) = "s390x" ] && exp=6
+				[ $(uname -m) = "s390x" ] && exp='^[6-7]$'
 	;; "--per-core")	exp=8
 	;; "--per-socket")	exp=8
 	;; "--per-node")	exp=8
@@ -34,7 +35,7 @@ function commachecker()
 		x=$(echo $line | tr -d -c ',')
 		cnt="${#x}"
 		# echo $line $cnt
-		[ "$cnt" -ne "$exp" ] && {
+		[[ ! "$cnt" =~ $exp ]] && {
 			echo "wrong number of fields. expected $exp in $line" 1>&2
 			exit 1;
 		}
-- 
2.36.1


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] perf/tests: Fix test case 83 on s390
       [not found] ` <CAP-5=fWeUh2hyGAqc4XidJZ7X06f4=MojyQwuOtbL3cs3u+T=w@mail.gmail.com>
@ 2022-07-20 16:13   ` Arnaldo Carvalho de Melo
  0 siblings, 0 replies; 2+ messages in thread
From: Arnaldo Carvalho de Melo @ 2022-07-20 16:13 UTC (permalink / raw)
  To: Ian Rogers
  Cc: Thomas Richter, LKML, linux-perf-users, Sven Schnelle,
	Vasily Gorbik, sumanth Korikkar, Heiko Carstens

Em Wed, Jul 20, 2022 at 06:16:44AM -0700, Ian Rogers escreveu:
> On Wed, Jul 20, 2022, 5:34 AM Thomas Richter <tmricht@linux.ibm.com> wrote:
> 
> > Perf test case 83: perf stat CSV output linter might fail
> > on s390.
> > The reason for this is the output of the command
> >
> >  ./perf stat -x, -A -a --no-merge true
> >
> > which depends on a .config file setting. When CONFIG_SCHED_TOPOLOGY
> > is set, the output of above perf command is
> >
> >    CPU0,1.50,msec,cpu-clock,1502781,100.00,1.052,CPUs utilized
> >
> > When CONFIG_SCHED_TOPOLOGY is *NOT* set the output of above perf
> > command is
> >
> >    0.95,msec,cpu-clock,949800,100.00,1.060,CPUs utilized
> >
> > Fix the test case to accept both output formats.
> >
> > Output before:
> >  # perf test 83
> >  83: perf stat CSV output linter       : FAILED!
> >  #
> >
> > Output after:
> >  # ./perf test 83
> >  83: perf stat CSV output linter       : Ok
> >  #
> >
> > Fixes: ec906102e5b7 ("perf test: Fix "perf stat CSV output linter" test on
> > s390")
> >
> > Signed-off-by: Thomas Richter <tmricht@linux.ibm.com>
> > Acked-by: Sumanth Korikkar <sumanthk@linux.ibm.com>
> >
> 
> Acked-by: Ian Rogers <irogers@google.com>

Thanks, applied.

- Arnaldo

 
> Thanks,
> Ian
> 
> ---
> >  tools/perf/tests/shell/stat+csv_output.sh | 7 ++++---
> >  1 file changed, 4 insertions(+), 3 deletions(-)
> >
> > diff --git a/tools/perf/tests/shell/stat+csv_output.sh
> > b/tools/perf/tests/shell/stat+csv_output.sh
> > index 38c26f3ef4c1..eb5196f58190 100755
> > --- a/tools/perf/tests/shell/stat+csv_output.sh
> > +++ b/tools/perf/tests/shell/stat+csv_output.sh
> > @@ -8,7 +8,8 @@ set -e
> >
> >  function commachecker()
> >  {
> > -       local -i cnt=0 exp=0
> > +       local -i cnt=0
> > +       local exp=0
> >
> >         case "$1"
> >         in "--no-args")         exp=6
> > @@ -17,7 +18,7 @@ function commachecker()
> >         ;; "--interval")        exp=7
> >         ;; "--per-thread")      exp=7
> >         ;; "--system-wide-no-aggr")     exp=7
> > -                               [ $(uname -m) = "s390x" ] && exp=6
> > +                               [ $(uname -m) = "s390x" ] && exp='^[6-7]$'
> >         ;; "--per-core")        exp=8
> >         ;; "--per-socket")      exp=8
> >         ;; "--per-node")        exp=8
> > @@ -34,7 +35,7 @@ function commachecker()
> >                 x=$(echo $line | tr -d -c ',')
> >                 cnt="${#x}"
> >                 # echo $line $cnt
> > -               [ "$cnt" -ne "$exp" ] && {
> > +               [[ ! "$cnt" =~ $exp ]] && {
> >                         echo "wrong number of fields. expected $exp in
> > $line" 1>&2
> >                         exit 1;
> >                 }
> > --
> > 2.36.1
> >
> >

-- 

- Arnaldo

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2022-07-20 16:13 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-07-20 12:34 [PATCH] perf/tests: Fix test case 83 on s390 Thomas Richter
     [not found] ` <CAP-5=fWeUh2hyGAqc4XidJZ7X06f4=MojyQwuOtbL3cs3u+T=w@mail.gmail.com>
2022-07-20 16:13   ` 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.