Messages in this thread Patch in this message | | | From | Namhyung Kim <> | Subject | [PATCH 4/6] perf test: Add system-wide mode in perf record tests | Date | Tue, 6 Sep 2022 23:46:43 -0700 |
| |
Add system wide recording test with the same pattern. It'd skip the test when it failes to run perf record. For system-wide mode, it needs to avoid build-id collection and synthesis because the test only cares about the test program and kernel would generates necessary events as the process starts.
Signed-off-by: Namhyung Kim <namhyung@kernel.org> --- tools/perf/tests/shell/record.sh | 34 ++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+)
diff --git a/tools/perf/tests/shell/record.sh b/tools/perf/tests/shell/record.sh index 3331fb092654..bd4ef60948bd 100755 --- a/tools/perf/tests/shell/record.sh +++ b/tools/perf/tests/shell/record.sh @@ -134,10 +134,44 @@ test_register_capture() { echo "Register capture test [Success]" } +test_system_wide() { + echo "Basic --system-wide mode test" + if ! perf record -aB --synth=no ${testopt} -o ${perfdata} ${testprog} 2> /dev/null + then + echo "System-wide record [Skipped not supported]" + if [ $err -ne 1 ] + then + err=2 + fi + return + fi + if ! perf report -i ${perfdata} -q | egrep -q ${testsym} + then + echo "System-wide record [Failed missing output]" + err=1 + return + fi + if ! perf record -aB --synth=no -e cpu-clock,cs --threads=cpu ${testopt} \ + -o ${perfdata} ${testprog} 2> /dev/null + then + echo "System-wide test [Failed recording with threads]" + err=1 + return + fi + if ! perf report -i ${perfdata} -q | egrep -q ${testsym} + then + echo "System-wide record [Failed missing output]" + err=1 + return + fi + echo "Basic --system-wide mode test [Success]" +} + build_test_program test_per_thread test_register_capture +test_system_wide cleanup exit $err -- 2.37.2.789.g6183377224-goog
| |