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>
if ! perf record -o /dev/null --quiet ${testprog} 2> /dev/null
then
echo "Per-thread record [Skipped event not supported]"
- if [ $err -ne 1 ]
- then
- err=2
- fi
return
fi
if ! perf record --per-thread -o "${perfdata}" ${testprog} 2> /dev/null
if ! perf list | grep -q 'br_inst_retired.near_call'
then
echo "Register capture test [Skipped missing event]"
- if [ $err -ne 1 ]
- then
- err=2
- fi
return
fi
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'
if ! perf record -aB --synth=no -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 | grep -q "${testsym}"