perf test: Suppress logs in cs-etm testing
With the option '-v' for the verbose logs, "perf test" outputs tons of logs for the CoreSight case, the logs are mainly introduced by the decoding. And it outputs some trivial info from "perf record" command and there have debugging info for CPU number and device name when iterates between ETMs and sinks. For a neat output format, this patch redirects the output logs to "/dev/null", thus can avoid to flood logs. And it removes the redundant log for CPU number and device name, which have already printed out the relevant info in the function record_touch_file(). Signed-off-by: Leo Yan <leo.yan@linaro.org> Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com> Cc: Basil Eljuse <basil.eljuse@arm.com> Cc: Jiri Olsa <jolsa@redhat.com> Cc: Mark Rutland <mark.rutland@arm.com> Cc: Mathieu Poirier <mathieu.poirier@linaro.org> Cc: Mike Leach <mike.leach@linaro.org> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Naresh Kamboju <naresh.kamboju@linaro.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Suzuki Poulouse <suzuki.poulose@arm.com> Cc: Viresh Kumar <viresh.kumar@linaro.org> Link: http://lore.kernel.org/lkml/20210215115944.535986-2-leo.yan@linaro.org Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
parent
067012974c
commit
46355e3d79
|
@ -33,7 +33,7 @@ record_touch_file() {
|
||||||
echo "Recording trace (only user mode) with path: CPU$2 => $1"
|
echo "Recording trace (only user mode) with path: CPU$2 => $1"
|
||||||
rm -f $file
|
rm -f $file
|
||||||
perf record -o ${perfdata} -e cs_etm/@$1/u --per-thread \
|
perf record -o ${perfdata} -e cs_etm/@$1/u --per-thread \
|
||||||
-- taskset -c $2 touch $file
|
-- taskset -c $2 touch $file > /dev/null 2>&1
|
||||||
}
|
}
|
||||||
|
|
||||||
perf_script_branch_samples() {
|
perf_script_branch_samples() {
|
||||||
|
@ -43,8 +43,8 @@ perf_script_branch_samples() {
|
||||||
# touch 6512 1 branches:u: ffffb220824c strcmp+0xc (/lib/aarch64-linux-gnu/ld-2.27.so)
|
# touch 6512 1 branches:u: ffffb220824c strcmp+0xc (/lib/aarch64-linux-gnu/ld-2.27.so)
|
||||||
# touch 6512 1 branches:u: ffffb22082e0 strcmp+0xa0 (/lib/aarch64-linux-gnu/ld-2.27.so)
|
# touch 6512 1 branches:u: ffffb22082e0 strcmp+0xa0 (/lib/aarch64-linux-gnu/ld-2.27.so)
|
||||||
# touch 6512 1 branches:u: ffffb2208320 strcmp+0xe0 (/lib/aarch64-linux-gnu/ld-2.27.so)
|
# touch 6512 1 branches:u: ffffb2208320 strcmp+0xe0 (/lib/aarch64-linux-gnu/ld-2.27.so)
|
||||||
perf script -F,-time -i ${perfdata} | \
|
perf script -F,-time -i ${perfdata} 2>&1 | \
|
||||||
egrep " +$1 +[0-9]+ .* +branches:(.*:)? +"
|
egrep " +$1 +[0-9]+ .* +branches:(.*:)? +" > /dev/null 2>&1
|
||||||
}
|
}
|
||||||
|
|
||||||
perf_report_branch_samples() {
|
perf_report_branch_samples() {
|
||||||
|
@ -54,8 +54,8 @@ perf_report_branch_samples() {
|
||||||
# 73.04% 73.04% touch libc-2.27.so [.] _dl_addr
|
# 73.04% 73.04% touch libc-2.27.so [.] _dl_addr
|
||||||
# 7.71% 7.71% touch libc-2.27.so [.] getenv
|
# 7.71% 7.71% touch libc-2.27.so [.] getenv
|
||||||
# 2.59% 2.59% touch ld-2.27.so [.] strcmp
|
# 2.59% 2.59% touch ld-2.27.so [.] strcmp
|
||||||
perf report --stdio -i ${perfdata} | \
|
perf report --stdio -i ${perfdata} 2>&1 | \
|
||||||
egrep " +[0-9]+\.[0-9]+% +[0-9]+\.[0-9]+% +$1 "
|
egrep " +[0-9]+\.[0-9]+% +[0-9]+\.[0-9]+% +$1 " > /dev/null 2>&1
|
||||||
}
|
}
|
||||||
|
|
||||||
perf_report_instruction_samples() {
|
perf_report_instruction_samples() {
|
||||||
|
@ -65,8 +65,8 @@ perf_report_instruction_samples() {
|
||||||
# 68.12% touch libc-2.27.so [.] _dl_addr
|
# 68.12% touch libc-2.27.so [.] _dl_addr
|
||||||
# 5.80% touch libc-2.27.so [.] getenv
|
# 5.80% touch libc-2.27.so [.] getenv
|
||||||
# 4.35% touch ld-2.27.so [.] _dl_fixup
|
# 4.35% touch ld-2.27.so [.] _dl_fixup
|
||||||
perf report --itrace=i1000i --stdio -i ${perfdata} | \
|
perf report --itrace=i1000i --stdio -i ${perfdata} 2>&1 | \
|
||||||
egrep " +[0-9]+\.[0-9]+% +$1"
|
egrep " +[0-9]+\.[0-9]+% +$1" > /dev/null 2>&1
|
||||||
}
|
}
|
||||||
|
|
||||||
is_device_sink() {
|
is_device_sink() {
|
||||||
|
@ -129,9 +129,6 @@ arm_cs_etm_traverse_path_test() {
|
||||||
# Find the ETM device belonging to which CPU
|
# Find the ETM device belonging to which CPU
|
||||||
cpu=`cat $dev/cpu`
|
cpu=`cat $dev/cpu`
|
||||||
|
|
||||||
echo $dev
|
|
||||||
echo $cpu
|
|
||||||
|
|
||||||
# Use depth-first search (DFS) to iterate outputs
|
# Use depth-first search (DFS) to iterate outputs
|
||||||
arm_cs_iterate_devices $dev $cpu
|
arm_cs_iterate_devices $dev $cpu
|
||||||
done
|
done
|
||||||
|
@ -139,7 +136,7 @@ arm_cs_etm_traverse_path_test() {
|
||||||
|
|
||||||
arm_cs_etm_system_wide_test() {
|
arm_cs_etm_system_wide_test() {
|
||||||
echo "Recording trace with system wide mode"
|
echo "Recording trace with system wide mode"
|
||||||
perf record -o ${perfdata} -e cs_etm// -a -- ls
|
perf record -o ${perfdata} -e cs_etm// -a -- ls > /dev/null 2>&1
|
||||||
|
|
||||||
perf_script_branch_samples perf &&
|
perf_script_branch_samples perf &&
|
||||||
perf_report_branch_samples perf &&
|
perf_report_branch_samples perf &&
|
||||||
|
@ -154,7 +151,7 @@ arm_cs_etm_system_wide_test() {
|
||||||
arm_cs_etm_snapshot_test() {
|
arm_cs_etm_snapshot_test() {
|
||||||
echo "Recording trace with snapshot mode"
|
echo "Recording trace with snapshot mode"
|
||||||
perf record -o ${perfdata} -e cs_etm// -S \
|
perf record -o ${perfdata} -e cs_etm// -S \
|
||||||
-- dd if=/dev/zero of=/dev/null &
|
-- dd if=/dev/zero of=/dev/null > /dev/null 2>&1 &
|
||||||
PERFPID=$!
|
PERFPID=$!
|
||||||
|
|
||||||
# Wait for perf program
|
# Wait for perf program
|
||||||
|
|
Loading…
Reference in New Issue