[PATCH v2 11/18] perf test cs-etm: Remove duplicate branch tests
From: James Clark
Date: Tue Jun 02 2026 - 10:42:42 EST
We already test branch output in perf script mode, but then retest it in
Perf report mode. This is more of a test of Perf itself than Coresight
because Perf uses the same samples to generate both outputs. Also we're
already testing instruction output in Perf report mode.
Remove this test for a speedup. On the systemwide test also remove the
Perf report test because systemwide mode records a lot more data so
running multiple tests on it has a big runtime impact.
Signed-off-by: James Clark <james.clark@xxxxxxxxxx>
---
tools/perf/tests/shell/test_arm_coresight.sh | 24 +++++++-----------------
1 file changed, 7 insertions(+), 17 deletions(-)
diff --git a/tools/perf/tests/shell/test_arm_coresight.sh b/tools/perf/tests/shell/test_arm_coresight.sh
index bbf89e944e7b..8ed2c934c87d 100755
--- a/tools/perf/tests/shell/test_arm_coresight.sh
+++ b/tools/perf/tests/shell/test_arm_coresight.sh
@@ -20,6 +20,12 @@ skip_if_no_cs_etm_event() {
skip_if_no_cs_etm_event || exit 2
+if [ "$(id -u)" != 0 ]; then
+ # Requires root for -C and system wide tests
+ echo "[Skip] No root permission"
+ exit 2
+fi
+
perfdata=$(mktemp /tmp/__perf_test.perf.data.XXXXX)
file=$(mktemp /tmp/temporary_file.XXXXX)
@@ -52,17 +58,6 @@ perf_script_branch_samples() {
grep -E " +$1 +[0-9]+ .* +branches:(.*:)? +" > /dev/null 2>&1
}
-perf_report_branch_samples() {
- echo "Looking at perf.data file for reporting branch samples:"
-
- # Below is an example of the branch samples reporting:
- # 73.04% 73.04% touch libc-2.27.so [.] _dl_addr
- # 7.71% 7.71% touch libc-2.27.so [.] getenv
- # 2.59% 2.59% touch ld-2.27.so [.] strcmp
- perf report --stdio -i ${perfdata} 2>&1 | \
- grep -E " +[0-9]+\.[0-9]+% +[0-9]+\.[0-9]+% +$1 " > /dev/null 2>&1
-}
-
perf_report_instruction_samples() {
echo "Looking at perf.data file for instruction samples:"
@@ -123,7 +118,6 @@ arm_cs_iterate_devices() {
record_touch_file $device_name $2 &&
perf_script_branch_samples touch &&
- perf_report_branch_samples touch &&
perf_report_instruction_samples touch
err=$?
@@ -154,9 +148,7 @@ arm_cs_etm_system_wide_test() {
# System-wide mode should include perf samples so test for that
# instead of ls
- perf_script_branch_samples perf &&
- perf_report_branch_samples perf &&
- perf_report_instruction_samples perf
+ perf_script_branch_samples perf
err=$?
arm_cs_report "CoreSight system wide testing" $err
@@ -179,7 +171,6 @@ arm_cs_etm_snapshot_test() {
wait $PERFPID
perf_script_branch_samples dd &&
- perf_report_branch_samples dd &&
perf_report_instruction_samples dd
err=$?
@@ -191,7 +182,6 @@ arm_cs_etm_basic_test() {
perf record -o ${perfdata} "$@" -m,8M -- ls > /dev/null 2>&1
perf_script_branch_samples ls &&
- perf_report_branch_samples ls &&
perf_report_instruction_samples ls
err=$?
--
2.34.1