mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs.git
synced 2026-10-30 05:42:46 +01:00
perf test: Add trace record and replay test
It just check trace record and replay could display correct output.
It uses 'sleep' process and sees there's a clock_nanosleep syscall.
$ sudo perf test -vv replay
108: perf trace record and replay:
--- start ---
test child forked, pid 1563219
[ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 0.077 MB /tmp/temporary_file.w1ApA (242 samples) ]
0.686 (1000.068 ms): sleep/1563226 clock_nanosleep(rqtp: 0x7ffc20ffee10, rmtp: 0x7ffc20ffee50) = 0
---- end(0) ----
108: perf trace record and replay : Ok
Tested-by: Thomas Falcon <[email protected]>
Cc: Howard Chu <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Namhyung Kim <[email protected]>
This commit is contained in:
1 parent
38672c5033
commit
15bcfb96d0
1 file changed
+21
+21
@@ -0,0 +1,21 @@
|
||||
#!/bin/sh
|
||||
# perf trace record and replay
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
|
||||
# Check that perf trace works with record and replay
|
||||
|
||||
# shellcheck source=lib/probe.sh
|
||||
. "$(dirname $0)"/lib/probe.sh
|
||||
|
||||
skip_if_no_perf_trace || exit 2
|
||||
[ "$(id -u)" = 0 ] || exit 2
|
||||
|
||||
file=$(mktemp /tmp/temporary_file.XXXXX)
|
||||
|
||||
perf trace record -o ${file} sleep 1 || exit 1
|
||||
if ! perf trace -i ${file} 2>&1 | grep nanosleep; then
|
||||
echo "Failed: cannot find *nanosleep syscall"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
rm -f ${file}
|
||||
Reference in new issue
Block a user