]> Git Repo - linux.git/blob - tools/perf/tests/shell/stat_all_metrics.sh
kasan: move tests to mm/kasan/
[linux.git] / tools / perf / tests / shell / stat_all_metrics.sh
1 #!/bin/bash
2 # perf all metrics test
3 # SPDX-License-Identifier: GPL-2.0
4
5 err=0
6 for m in $(perf list --raw-dump metrics); do
7   echo "Testing $m"
8   result=$(perf stat -M "$m" true 2>&1)
9   if [[ "$result" =~ "${m:0:50}" ]] || [[ "$result" =~ "<not supported>" ]]
10   then
11     continue
12   fi
13   # Failed so try system wide.
14   result=$(perf stat -M "$m" -a true 2>&1)
15   if [[ "$result" =~ "${m:0:50}" ]]
16   then
17     continue
18   fi
19   # Failed again, possibly the workload was too small so retry with something
20   # longer.
21   result=$(perf stat -M "$m" perf bench internals synthesize 2>&1)
22   if [[ "$result" =~ "${m:0:50}" ]]
23   then
24     continue
25   fi
26   echo "Metric '$m' not printed in:"
27   echo "$result"
28   if [[ "$err" != "1" ]]
29   then
30     err=2
31     if [[ "$result" =~ "FP_ARITH" || "$result" =~ "AMX" ]]
32     then
33       echo "Skip, not fail, for FP issues"
34     elif [[ "$result" =~ "PMM" ]]
35     then
36       echo "Skip, not fail, for Optane memory issues"
37     else
38       err=1
39     fi
40   fi
41 done
42
43 exit "$err"
This page took 0.034653 seconds and 4 git commands to generate.