Commit 87abe344 authored by Thomas Richter's avatar Thomas Richter Committed by Arnaldo Carvalho de Melo
Browse files

perf test: Fix test case 83 ('perf stat CSV output linter') on s390



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: ec906102 ("perf test: Fix "perf stat CSV output linter" test on s390")
Signed-off-by: default avatarThomas Richter <tmricht@linux.ibm.com>
Acked-by: default avatarIan Rogers <irogers@google.com>
Acked-by: default avatarSumanth Korikkar <sumanthk@linux.ibm.com>
Cc: Heiko Carstens <hca@linux.ibm.com>
Cc: Sven Schnelle <svens@linux.ibm.com>
Cc: Vasily Gorbik <gor@linux.ibm.com>
Link: https://lore.kernel.org/r/20220720123419.220953-1-tmricht@linux.ibm.com


Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
parent 2c91cd88
Loading
Loading
Loading
Loading
+4 −3
Original line number Diff line number Diff line
@@ -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;
		}