Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

perf test: Do not set TEST_SKIP for record subtests

It now has 4 sub tests and at least one of them should run.

But once the TEST_SKIP (= 2) return value is set, it won't be
overwritten unless there's a failure. I think we should return success
when one or more tests are skipped but the remaining subtests are
passed.

So update the test code not to set the err variable when it skips
the test.

Reviewed-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Acked-by: Ian Rogers <irogers@google.com>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: https://lore.kernel.org/r/20221020172643.3458767-9-namhyung@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>

authored by

Namhyung Kim and committed by
Arnaldo Carvalho de Melo
8b380e6a 7f4ed3f0

-12
-12
tools/perf/tests/shell/record.sh
··· 81 81 if ! perf record -o /dev/null --quiet ${testprog} 2> /dev/null 82 82 then 83 83 echo "Per-thread record [Skipped event not supported]" 84 - if [ $err -ne 1 ] 85 - then 86 - err=2 87 - fi 88 84 return 89 85 fi 90 86 if ! perf record --per-thread -o "${perfdata}" ${testprog} 2> /dev/null ··· 127 131 if ! perf list | grep -q 'br_inst_retired.near_call' 128 132 then 129 133 echo "Register capture test [Skipped missing event]" 130 - if [ $err -ne 1 ] 131 - then 132 - err=2 133 - fi 134 134 return 135 135 fi 136 136 if ! perf record --intr-regs=\? 2>&1 | grep -q 'available registers: AX BX CX DX SI DI BP SP IP FLAGS CS SS R8 R9 R10 R11 R12 R13 R14 R15' ··· 151 159 if ! perf record -aB --synth=no -o "${perfdata}" ${testprog} 2> /dev/null 152 160 then 153 161 echo "System-wide record [Skipped not supported]" 154 - if [ $err -ne 1 ] 155 - then 156 - err=2 157 - fi 158 162 return 159 163 fi 160 164 if ! perf report -i "${perfdata}" -q | grep -q "${testsym}"