Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 721a1f53 authored by Arnaldo Carvalho de Melo's avatar Arnaldo Carvalho de Melo
Browse files

perf tests: Pass the subtest index to each test routine

Some tests have sub-tests we want to run, so allow passing this.

Wang tried to avoid having to touch all tests, but then, having the
test.func in an anonymous union makes the build fail on older compilers,
like the one in RHEL6, where:

  test a = {
	.func = foo,
  };

fails.

To fix it leave the func pointer in the main structure and pass the subtest
index to all tests, end result function is the same, but we have just one
function pointer, not two, with and without the subtest index as an argument.

Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Wang Nan <wangnan0@huawei.com>
Link: http://lkml.kernel.org/n/tip-5genj0ficwdmelpoqlds0u4y@git.kernel.org


Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
parent d35b3289
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -2,10 +2,10 @@
#define ARCH_TESTS_H

/* Tests */
int test__rdpmc(void);
int test__perf_time_to_tsc(void);
int test__insn_x86(void);
int test__intel_cqm_count_nmi_context(void);
int test__rdpmc(int subtest);
int test__perf_time_to_tsc(int subtest);
int test__insn_x86(int subtest);
int test__intel_cqm_count_nmi_context(int subtest);

#ifdef HAVE_DWARF_UNWIND_SUPPORT
struct thread;
+1 −1
Original line number Diff line number Diff line
@@ -171,7 +171,7 @@ static int test_data_set(struct test_data *dat_set, int x86_64)
 * verbose (-v) option to see all the instructions and whether or not they
 * decoded successfuly.
 */
int test__insn_x86(void)
int test__insn_x86(int subtest __maybe_unused)
{
	int ret = 0;

+1 −1
Original line number Diff line number Diff line
@@ -33,7 +33,7 @@ static pid_t spawn(void)
 * the last read counter value to avoid triggering a WARN_ON_ONCE() in
 * smp_call_function_many() caused by sending IPIs from NMI context.
 */
int test__intel_cqm_count_nmi_context(void)
int test__intel_cqm_count_nmi_context(int subtest __maybe_unused)
{
	struct perf_evlist *evlist = NULL;
	struct perf_evsel *evsel = NULL;
+1 −1
Original line number Diff line number Diff line
@@ -35,7 +35,7 @@
 * %0 is returned, otherwise %-1 is returned.  If TSC conversion is not
 * supported then then the test passes but " (not supported)" is printed.
 */
int test__perf_time_to_tsc(void)
int test__perf_time_to_tsc(int subtest __maybe_unused)
{
	struct record_opts opts = {
		.mmap_pages	     = UINT_MAX,
+1 −1
Original line number Diff line number Diff line
@@ -149,7 +149,7 @@ static int __test__rdpmc(void)
	return 0;
}

int test__rdpmc(void)
int test__rdpmc(int subtest __maybe_unused)
{
	int status = 0;
	int wret = 0;
Loading