mirror of
https://github.com/torvalds/linux.git
synced 2026-05-26 08:02:27 +02:00
perf test: Add new test cases for the branch counter feature
Enhance the test case for the branch counter feature. Now, the test verifies: - The new filter can be successfully applied on the supported platforms. - The counter value can be outputted via the perf report -D - The counter value and the abbr name can be outputted via the perf script (New) Reviewed-by: Andi Kleen <ak@linux.intel.com> Signed-off-by: Kan Liang <kan.liang@linux.intel.com> Acked-by: Namhyung Kim <namhyung@kernel.org> Cc: Adrian Hunter <adrian.hunter@intel.com> Cc: Ian Rogers <irogers@google.com> Cc: Ingo Molnar <mingo@kernel.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Stephane Eranian <eranian@google.com> Link: https://lore.kernel.org/r/20240813160208.2493643-10-kan.liang@linux.intel.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
parent
6f9d8d1de2
commit
dab5b6cb0d
|
|
@ -21,6 +21,7 @@ testprog="perf test -w thloop"
|
|||
cpu_pmu_dir="/sys/bus/event_source/devices/cpu*"
|
||||
br_cntr_file="/caps/branch_counter_nr"
|
||||
br_cntr_output="branch stack counters"
|
||||
br_cntr_script_output="br_cntr: A"
|
||||
|
||||
cleanup() {
|
||||
rm -rf "${perfdata}"
|
||||
|
|
@ -165,7 +166,7 @@ test_workload() {
|
|||
}
|
||||
|
||||
test_branch_counter() {
|
||||
echo "Basic branch counter test"
|
||||
echo "Branch counter test"
|
||||
# Check if the branch counter feature is supported
|
||||
for dir in $cpu_pmu_dir
|
||||
do
|
||||
|
|
@ -175,19 +176,25 @@ test_branch_counter() {
|
|||
return
|
||||
fi
|
||||
done
|
||||
if ! perf record -o "${perfdata}" -j any,counter ${testprog} 2> /dev/null
|
||||
if ! perf record -o "${perfdata}" -e "{branches:p,instructions}" -j any,counter ${testprog} 2> /dev/null
|
||||
then
|
||||
echo "Basic branch counter test [Failed record]"
|
||||
echo "Branch counter record test [Failed record]"
|
||||
err=1
|
||||
return
|
||||
fi
|
||||
if ! perf report -i "${perfdata}" -D -q | grep -q "$br_cntr_output"
|
||||
then
|
||||
echo "Basic branch record test [Failed missing output]"
|
||||
echo "Branch counter report test [Failed missing output]"
|
||||
err=1
|
||||
return
|
||||
fi
|
||||
echo "Basic branch counter test [Success]"
|
||||
if ! perf script -i "${perfdata}" -F +brstackinsn,+brcntr | grep -q "$br_cntr_script_output"
|
||||
then
|
||||
echo " Branch counter script test [Failed missing output]"
|
||||
err=1
|
||||
return
|
||||
fi
|
||||
echo "Branch counter test [Success]"
|
||||
}
|
||||
|
||||
test_per_thread
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user