aboutsummaryrefslogtreecommitdiffstats
path: root/tools/perf/tests
diff options
context:
space:
mode:
authorLeo Yan <leo.yan@linaro.org>2020-10-19 18:02:36 +0800
committerArnaldo Carvalho de Melo <acme@redhat.com>2020-11-04 09:42:40 -0300
commit248dd9b591db5bc5fb46a0e015753cfcfe60a345 (patch)
tree30b8b92b1f7a98d74bf27df5ce3989e0eb6dab4f /tools/perf/tests
parentperf tests tsc: Make tsc testing as a common testing (diff)
downloadlinux-dev-248dd9b591db5bc5fb46a0e015753cfcfe60a345.tar.xz
linux-dev-248dd9b591db5bc5fb46a0e015753cfcfe60a345.zip
perf tests tsc: Add checking helper is_supported()
So far tsc is enabled on x86_64, i386 and Arm64 architectures, add checking helper to skip this testing for other architectures. Signed-off-by: Leo Yan <leo.yan@linaro.org> Acked-by: Jiri Olsa <jolsa@redhat.com> Tested-by: Arnaldo Carvalho de Melo <acme@redhat.com> Link: https://lore.kernel.org/r/20201019100236.23675-3-leo.yan@linaro.org Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to '')
-rw-r--r--tools/perf/tests/builtin-test.c1
-rw-r--r--tools/perf/tests/perf-time-to-tsc.c13
-rw-r--r--tools/perf/tests/tests.h1
3 files changed, 15 insertions, 0 deletions
diff --git a/tools/perf/tests/builtin-test.c b/tools/perf/tests/builtin-test.c
index 02e7bbf70419..a185904c47f3 100644
--- a/tools/perf/tests/builtin-test.c
+++ b/tools/perf/tests/builtin-test.c
@@ -352,6 +352,7 @@ static struct test generic_tests[] = {
{
.desc = "Convert perf time to TSC",
.func = test__perf_time_to_tsc,
+ .is_supported = test__tsc_is_supported,
},
{
.func = NULL,
diff --git a/tools/perf/tests/perf-time-to-tsc.c b/tools/perf/tests/perf-time-to-tsc.c
index aee97c16c0d9..a9560e0f6360 100644
--- a/tools/perf/tests/perf-time-to-tsc.c
+++ b/tools/perf/tests/perf-time-to-tsc.c
@@ -169,3 +169,16 @@ out_err:
evlist__delete(evlist);
return err;
}
+
+bool test__tsc_is_supported(void)
+{
+ /*
+ * Except x86_64/i386 and Arm64, other archs don't support TSC in perf.
+ * Just enable the test for x86_64/i386 and Arm64 archs.
+ */
+#if defined(__x86_64__) || defined(__i386__) || defined(__aarch64__)
+ return true;
+#else
+ return false;
+#endif
+}
diff --git a/tools/perf/tests/tests.h b/tools/perf/tests/tests.h
index c9b180e640e5..b1f2aac93b33 100644
--- a/tools/perf/tests/tests.h
+++ b/tools/perf/tests/tests.h
@@ -129,6 +129,7 @@ int test__perf_time_to_tsc(struct test *test, int subtest);
bool test__bp_signal_is_supported(void);
bool test__bp_account_is_supported(void);
bool test__wp_is_supported(void);
+bool test__tsc_is_supported(void);
#if defined(__arm__) || defined(__aarch64__)
#ifdef HAVE_DWARF_UNWIND_SUPPORT