File tree Expand file tree Collapse file tree 1 file changed +74
-0
lines changed Expand file tree Collapse file tree 1 file changed +74
-0
lines changed Original file line number Diff line number Diff line change
1
+ #! /bin/bash
2
+ # perf header tests
3
+ # SPDX-License-Identifier: GPL-2.0
4
+
5
+ set -e
6
+
7
+ err=0
8
+ perfdata=$( mktemp /tmp/__perf_test_header.perf.data.XXXXX)
9
+ script_output=$( mktemp /tmp/__perf_test_header.perf.data.XXXXX.script)
10
+
11
+ cleanup () {
12
+ rm -f " ${perfdata} "
13
+ rm -f " ${perfdata} " .old
14
+ rm -f " ${script_output} "
15
+
16
+ trap - EXIT TERM INT
17
+ }
18
+
19
+ trap_cleanup () {
20
+ echo " Unexpected signal in ${FUNCNAME[1]} "
21
+ cleanup
22
+ exit 1
23
+ }
24
+ trap trap_cleanup EXIT TERM INT
25
+
26
+ check_header_output () {
27
+ declare -a fields=(
28
+ " captured"
29
+ " hostname"
30
+ " os release"
31
+ " arch"
32
+ " cpuid"
33
+ " nrcpus"
34
+ " event"
35
+ " cmdline"
36
+ " perf version"
37
+ " sibling (cores|dies|threads)"
38
+ " sibling threads"
39
+ " total memory"
40
+ )
41
+ for i in " ${fields[@]} "
42
+ do
43
+ if ! grep -q -E " $i " " ${script_output} "
44
+ then
45
+ echo " Failed to find expect $i in output"
46
+ err=1
47
+ fi
48
+ done
49
+ }
50
+
51
+ test_file () {
52
+ echo " Test perf header file"
53
+
54
+ perf record -o " ${perfdata} " -g -- perf test -w noploop
55
+ perf report --header-only -I -i " ${perfdata} " > " ${script_output} "
56
+ check_header_output
57
+
58
+ echo " Test perf header file [Done]"
59
+ }
60
+
61
+ test_pipe () {
62
+ echo " Test perf header pipe"
63
+
64
+ perf record -o - -g -- perf test -w noploop | perf report --header-only -I -i - > " ${script_output} "
65
+ check_header_output
66
+
67
+ echo " Test perf header pipe [Done]"
68
+ }
69
+
70
+ test_file
71
+ test_pipe
72
+
73
+ cleanup
74
+ exit $err
You can’t perform that action at this time.
0 commit comments