linux/tools/perf/tests
Thomas Richter 5bb017d4b9 perf test: Fix error message for test case 71 on s390, where it is not supported
Test case 71 'Convert perf time to TSC' is not supported on s390.

Subtest 71.1 is skipped with the correct message, but subtest 71.2 is
not skipped and fails.

The root cause is function evlist__open() called from
test__perf_time_to_tsc().  evlist__open() returns -ENOENT because the
event cycles:u is not supported by the selected PMU, for example
platform s390 on z/VM or an x86_64 virtual machine.

The PMU driver returns -ENOENT in this case. This error is leads to the
failure.

Fix this by returning TEST_SKIP on -ENOENT.

Output before:
 71: Convert perf time to TSC:
 71.1: TSC support:             Skip (This architecture does not support)
 71.2: Perf time to TSC:        FAILED!

Output after:
 71: Convert perf time to TSC:
 71.1: TSC support:             Skip (This architecture does not support)
 71.2: Perf time to TSC:        Skip (perf_read_tsc_conversion is not supported)

This also happens on an x86_64 virtual machine:
   # uname -m
   x86_64
   $ ./perf test -F 71
    71: Convert perf time to TSC  :
    71.1: TSC support             : Ok
    71.2: Perf time to TSC        : FAILED!
   $

Committer testing:

Continues to work on x86_64:

  $ perf test 71
   71: Convert perf time to TSC    :
   71.1: TSC support               : Ok
   71.2: Perf time to TSC          : Ok
  $

Fixes: 290fa68bdc ("perf test tsc: Fix error message when not supported")
Signed-off-by: Thomas Richter <tmricht@linux.ibm.com>
Acked-by: Sumanth Korikkar <sumanthk@linux.ibm.com>
Tested-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Chengdong Li <chengdongli@tencent.com>
Cc: chengdongli@tencent.com
Cc: Heiko Carstens <hca@linux.ibm.com>
Cc: Sven Schnelle <svens@linux.ibm.com>
Cc: Vasily Gorbik <gor@linux.ibm.com>
Link: https://lore.kernel.org/r/20220420062921.1211825-1-tmricht@linux.ibm.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
2022-04-22 18:39:34 -03:00
..
attr perf test: Add perf_event_attr tests for the arm_spe event 2022-03-05 16:00:12 -03:00
shell perf test arm64: Test unwinding using fame-pointer (fp) mode 2022-03-21 18:05:23 -03:00
.gitignore .gitignore: add SPDX License Identifier 2020-03-25 11:50:48 +01:00
api-io.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
attr.c perf cpumap: Give CPUs their own type 2022-01-12 14:28:23 -03:00
attr.py perf script python: Add Python3 support to tests/attr.py 2019-02-05 10:31:08 -03:00
backward-ring-buffer.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
bitmap.c perf cpumap: Migrate to libperf cpumap api 2022-01-22 17:08:42 -03:00
bp_account.c perf test: BP tests, remove is_supported use 2021-11-13 18:11:50 -03:00
bp_signal_overflow.c perf test: BP tests, remove is_supported use 2021-11-13 18:11:50 -03:00
bp_signal.c perf test: BP tests, remove is_supported use 2021-11-13 18:11:50 -03:00
bpf-script-example.c perf tests: Add missing SPDX headers 2019-06-17 15:57:19 -03:00
bpf-script-test-kbuild.c perf tests: Add missing SPDX headers 2019-06-17 15:57:19 -03:00
bpf-script-test-prologue.c perf tests: Add missing SPDX headers 2019-06-17 15:57:19 -03:00
bpf-script-test-relocation.c perf tests: Add missing SPDX headers 2019-06-17 15:57:19 -03:00
bpf.c perf bpf: Stop using deprecated bpf_load_program() API 2022-02-14 15:49:34 -03:00
Build perf test sigtrap: Add basic stress test for sigtrap handling 2021-12-07 22:18:23 -03:00
builtin-test.c perf test: Use 3 digits for test numbering now we can have more tests 2021-12-21 17:52:27 -03:00
clang.c perf test: Remove skip_if_fail 2021-11-13 18:11:50 -03:00
code-reading.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
cpumap.c perf cpumap: Migrate to libperf cpumap api 2022-02-11 14:01:15 -03:00
demangle-java-test.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
demangle-ocaml-test.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
dlfilter-test.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
dso-data.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
dwarf-unwind.c perf unwind: Don't show unwind error messages when augmenting frame pointer stack 2022-04-09 12:34:29 -03:00
event_update.c perf cpumap: Migrate to libperf cpumap api 2022-01-22 17:08:42 -03:00
event-times.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
evsel-roundtrip-name.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
evsel-tp-sched.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
expand-cgroup.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
expr.c perf test: Fix 'Simple expression parser' test on arch without CPU die topology info 2021-12-06 21:57:53 -03:00
fdarray.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
genelf.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
hists_common.c perf tools: Move event synthesizing routines to separate header 2019-09-20 09:19:22 -03:00
hists_common.h
hists_cumulate.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
hists_filter.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
hists_link.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
hists_output.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
is_printable_array.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
keep-tracking.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
kmod-path.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
llvm.c perf: Stop using bpf_object__open_buffer() API 2022-01-24 20:44:09 -08:00
llvm.h
make perf tools: Test build with libbpf/LIBBPF_DYNAMIC=1 2021-05-17 20:32:05 -03:00
maps.c perf test: Use pointer for maps 2022-02-14 16:51:03 -03:00
mem2node.c perf cpumap: Migrate to libperf cpumap api 2022-01-22 17:08:42 -03:00
mem.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
mmap-basic.c perf cpumap: Migrate to libperf cpumap api 2022-01-22 17:08:42 -03:00
mmap-thread-lookup.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
openat-syscall-all-cpus.c perf cpumap: Give CPUs their own type 2022-01-12 14:28:23 -03:00
openat-syscall-tp-fields.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
openat-syscall.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
parse-events.c perf test: Add parse-events test for aliases with hyphens 2022-01-22 17:21:41 -03:00
parse-metric.c perf test: Reset shadow counts before loading 2021-12-06 21:57:53 -03:00
parse-no-sample-id-all.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
pe-file-parsing.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
pe-file.c perf tests: Add test for PE binary format support 2020-09-04 14:38:15 -03:00
pe-file.exe perf tests: Add test for PE binary format support 2020-09-04 14:38:15 -03:00
pe-file.exe.debug perf tests: Add test for PE binary format support 2020-09-04 14:38:15 -03:00
perf-hooks.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
perf-record.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
perf-targz-src-pkg
perf-time-to-tsc.c perf test: Fix error message for test case 71 on s390, where it is not supported 2022-04-22 18:39:34 -03:00
pfm.c perf test: Remove skip_if_fail 2021-11-13 18:11:50 -03:00
pmu-events.c perf test: Make metric testing more robust 2022-02-15 17:15:33 -03:00
pmu.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
python-use.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
sample-parsing.c perf test sample-parsing: Fix branch_stack entry endianness check 2021-11-18 10:08:07 -03:00
sdt.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
sigtrap.c perf test: Skip failing sigtrap test for arm+aarch64 2022-02-18 09:54:50 -03:00
stat.c perf cpumap: Give CPUs their own type 2022-01-12 14:28:23 -03:00
sw-clock.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
switch-tracking.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
task-exit.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
tests.h perf test sigtrap: Add basic stress test for sigtrap handling 2021-12-07 22:18:23 -03:00
thread-map.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
thread-maps-share.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
time-utils-test.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
topology.c perf cpumap: Migrate to libperf cpumap api 2022-01-22 17:08:42 -03:00
unit_number__scnprintf.c perf test: Rename struct test to test_suite 2021-11-13 10:32:22 -03:00
vmlinux-kallsyms.c perf maps: Use a pointer for kmaps 2022-02-14 16:47:13 -03:00
wp.c perf tests wp: Remove unused functions on s390 2021-11-18 10:08:07 -03:00