History

perf intel-pt: Add a test for pause / resume

Add a simple sub-test to the "Miscellaneous Intel PT testing" test to check pause / resume.

Adrian Hunter committed 1 year ago

Commit 4c7f9ee1 parent f8b301e1 file · +28 −0Browse files

Unified · Split

tools/perf/tests/shell/test_intel_pt.sh+28−0
@@ -644,6 +644,33 @@ test_pipe() · 643 unmodified lines
644 return 0644 return 0
645}645}
646 646
647test_pause_resume()
648{
649 echo "--- Test with pause / resume ---"
650 if ! perf_record_no_decode -o "${perfdatafile}" -e intel_pt/aux-action=start-paused/u uname ; then
651 echo "SKIP: pause / resume is not supported"
652 return 2
653 fi
654 if ! perf_record_no_bpf -o "${perfdatafile}" \
655 -e intel_pt/aux-action=start-paused/u \
656 -e instructions/period=50000,aux-action=resume,name=Resume/u \
657 -e instructions/period=100000,aux-action=pause,name=Pause/u uname ; then
658 echo "perf record with pause / resume failed"
659 return 1
660 fi
661 if ! perf script -i "${perfdatafile}" --itrace=b -Fperiod,event | \
662 awk 'BEGIN {paused=1;branches=0}
663 /Resume/ {paused=0}
664 /branches/ {if (paused) exit 1;branches=1}
665 /Pause/ {paused=1}
666 END {if (!branches) exit 1}' ; then
667 echo "perf record with pause / resume failed"
668 return 1
669 fi
670 echo OK
671 return 0
672}
673
647count_result()674count_result()
648{675{
649 if [ "$1" -eq 2 ] ; then676 if [ "$1" -eq 2 ] ; then
@@ -672,6 +699,7 @@ test_power_event || ret=$? ; count_result $ret ; ret=0 · 22 unmodified lines
672test_no_tnt || ret=$? ; count_result $ret ; ret=0699test_no_tnt || ret=$? ; count_result $ret ; ret=0
673test_event_trace || ret=$? ; count_result $ret ; ret=0700test_event_trace || ret=$? ; count_result $ret ; ret=0
674test_pipe || ret=$? ; count_result $ret ; ret=0701test_pipe || ret=$? ; count_result $ret ; ret=0
702test_pause_resume || ret=$? ; count_result $ret ; ret=0
675 703
676cleanup704cleanup
677 705

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t