[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20200902132131.36304-7-leo.yan@linaro.org>
Date: Wed, 2 Sep 2020 14:21:31 +0100
From: Leo Yan <leo.yan@...aro.org>
To: Arnaldo Carvalho de Melo <acme@...nel.org>,
Mark Rutland <mark.rutland@....com>,
Peter Zijlstra <peterz@...radead.org>,
Ingo Molnar <mingo@...hat.com>, Wei Li <liwei391@...wei.com>,
Al Grant <al.grant@....com>,
Alexander Shishkin <alexander.shishkin@...ux.intel.com>,
Jiri Olsa <jolsa@...hat.com>,
Namhyung Kim <namhyung@...nel.org>,
Adrian Hunter <adrian.hunter@...el.com>,
"Naveen N. Rao" <naveen.n.rao@...ux.vnet.ibm.com>,
Nick Desaulniers <ndesaulniers@...gle.com>,
Kemeng Shi <shikemeng@...wei.com>,
Ian Rogers <irogers@...gle.com>,
John Garry <john.garry@...wei.com>,
Stephane Eranian <eranian@...gle.com>,
Nick Gasson <nick.gasson@....com>,
Andi Kleen <ak@...ux.intel.com>,
Steve MacLean <Steve.MacLean@...rosoft.com>,
"Gustavo A. R. Silva" <gustavoars@...nel.org>,
Kan Liang <kan.liang@...ux.intel.com>,
Will Deacon <will@...nel.org>,
James Clark <james.clark@....com>, linux-kernel@...r.kernel.org
Cc: Leo Yan <leo.yan@...aro.org>
Subject: [PATCH v3 6/6] 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@...aro.org>
---
tools/perf/tests/builtin-test.c | 1 +
tools/perf/tests/perf-time-to-tsc.c | 13 +++++++++++++
tools/perf/tests/tests.h | 1 +
3 files changed, 15 insertions(+)
diff --git a/tools/perf/tests/builtin-test.c b/tools/perf/tests/builtin-test.c
index 67e6a1c6c793..4b57ea79d3e7 100644
--- a/tools/perf/tests/builtin-test.c
+++ b/tools/perf/tests/builtin-test.c
@@ -344,6 +344,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 026d32ed078e..41dadd4cd097 100644
--- a/tools/perf/tests/perf-time-to-tsc.c
+++ b/tools/perf/tests/perf-time-to-tsc.c
@@ -171,3 +171,16 @@ int test__perf_time_to_tsc(struct test *test __maybe_unused, int subtest __maybe
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 1633f54d6156..86466a518d8e 100644
--- a/tools/perf/tests/tests.h
+++ b/tools/perf/tests/tests.h
@@ -127,6 +127,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
--
2.17.1
Powered by blists - more mailing lists