drm/rockchip: Don't change hdmi reference clock rate
[drm/drm-misc.git] / tools / perf / tests / shell / stat_all_metrics.sh
blob73e9347e88a964bd479102f559ee092e4ea1c509
1 #!/bin/bash
2 # perf all metrics test
3 # SPDX-License-Identifier: GPL-2.0
5 ParanoidAndNotRoot()
7 [ "$(id -u)" != 0 ] && [ "$(cat /proc/sys/kernel/perf_event_paranoid)" -gt $1 ]
10 system_wide_flag="-a"
11 if ParanoidAndNotRoot 0
12 then
13 system_wide_flag=""
16 err=0
17 for m in $(perf list --raw-dump metrics); do
18 echo "Testing $m"
19 result=$(perf stat -M "$m" $system_wide_flag -- sleep 0.01 2>&1)
20 result_err=$?
21 if [[ $result_err -gt 0 ]]
22 then
23 if [[ "$result" =~ \
24 "Access to performance monitoring and observability operations is limited" ]]
25 then
26 echo "Permission failure"
27 echo $result
28 if [[ $err -eq 0 ]]
29 then
30 err=2 # Skip
32 continue
33 elif [[ "$result" =~ "in per-thread mode, enable system wide" ]]
34 then
35 echo "Permissions - need system wide mode"
36 echo $result
37 if [[ $err -eq 0 ]]
38 then
39 err=2 # Skip
41 continue
42 elif [[ "$result" =~ "<not supported>" ]]
43 then
44 echo "Not supported events"
45 echo $result
46 if [[ $err -eq 0 ]]
47 then
48 err=2 # Skip
50 continue
51 elif [[ "$result" =~ "FP_ARITH" || "$result" =~ "AMX" ]]
52 then
53 echo "FP issues"
54 echo $result
55 if [[ $err -eq 0 ]]
56 then
57 err=2 # Skip
59 continue
60 elif [[ "$result" =~ "PMM" ]]
61 then
62 echo "Optane memory issues"
63 echo $result
64 if [[ $err -eq 0 ]]
65 then
66 err=2 # Skip
68 continue
72 if [[ "$result" =~ ${m:0:50} ]]
73 then
74 continue
77 # Failed, possibly the workload was too small so retry with something longer.
78 result=$(perf stat -M "$m" $system_wide_flag -- perf bench internals synthesize 2>&1)
79 if [[ "$result" =~ ${m:0:50} ]]
80 then
81 continue
83 echo "Metric '$m' not printed in:"
84 echo "$result"
85 err=1
86 done
88 exit "$err"