From fb5962f81ebbd8b4f3199115b5ddb7b7c7545458 Mon Sep 17 00:00:00 2001 From: Thomas Richter Date: Wed, 27 Jul 2022 16:14:39 +0200 Subject: [PATCH] perf test: Fix test case 95 ("Check branch stack sampling") on s390 and use same event On linux-next tree 'perf test 95' ("Check branch stack sampling") was added recently. s390 does not support branch sampling at all and the test case fails despite for checking branch support before hand. The check for support of branching uses the software event named "dummy", as seen in the line: perf record -b -o- -e dummy -B true > /dev/null 2>&1 || exit 2 However when the branch recording is actually done, a different event is used, as seen in the line: perf record -o $TMPDIR/... --branch-filter any,save_type,u -- ... The event is omitted and for "perf record" the default event is cycles, which is not supported by s390 and this fails when executed on s390: # perf record --branch-filter any,save_type,u -- /tmp/__perf_test.program.iDSmQ/a.out Error: cycles: PMU Hardware or event type doesn't support branch stack sampling. # Therefore fix this and use the same event cycles for testing support and actually running the test. Output before: # ./perf test -Fv 95 95: Check branch stack sampling : --- start --- Testing user branch stack sampling ---- end ---- Check branch stack sampling: FAILED! # Output after: # ./perf test -Fv 95 95: Check branch stack sampling : --- start --- ---- end ---- Check branch stack sampling: Skip # Fixes: b55878c90ab92a24 ("perf test: Add test for branch stack sampling") Reviewed-by: James Clark Signed-off-by: Thomas Richter Acked-by: German Gomez Cc: German Gomez Cc: Heiko Carstens Cc: Sumanth Korikkar Cc: Sven Schnelle Cc: Vasily Gorbik Link: https://lore.kernel.org/r/20220727141439.712582-1-tmricht@linux.ibm.com Signed-off-by: Arnaldo Carvalho de Melo --- tools/perf/tests/shell/test_brstack.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/perf/tests/shell/test_brstack.sh b/tools/perf/tests/shell/test_brstack.sh index 113ccd17bf03..c644f94a6500 100755 --- a/tools/perf/tests/shell/test_brstack.sh +++ b/tools/perf/tests/shell/test_brstack.sh @@ -12,7 +12,7 @@ if ! [ -x "$(command -v cc)" ]; then fi # skip the test if the hardware doesn't support branch stack sampling -perf record -b -o- -e dummy -B true > /dev/null 2>&1 || exit 2 +perf record -b -o- -B true > /dev/null 2>&1 || exit 2 TMPDIR=$(mktemp -d /tmp/__perf_test.program.XXXXX)