mirror of https://gitee.com/openkylin/linux.git
perf test: Do not abort tests on error
Run through all tests regardless of failures. On errors, return the first error code detected. Signed-off-by: Robert Richter <robert.richter@amd.com> Cc: Ingo Molnar <mingo@kernel.org> Cc: Jiri Olsa <jolsa@redhat.com> Cc: Peter Zijlstra <peterz@infradead.org> Link: http://lkml.kernel.org/r/1345572195-23857-2-git-send-email-robert.richter@amd.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
parent
d45a3e0068
commit
9bfbbc6d1e
|
@ -948,19 +948,19 @@ static int test_event(struct test__event_st *e)
|
|||
|
||||
static int test_events(struct test__event_st *events, unsigned cnt)
|
||||
{
|
||||
int ret = 0;
|
||||
int ret1, ret2 = 0;
|
||||
unsigned i;
|
||||
|
||||
for (i = 0; i < cnt; i++) {
|
||||
struct test__event_st *e = &events[i];
|
||||
|
||||
pr_debug("running test %d '%s'\n", i, e->name);
|
||||
ret = test_event(e);
|
||||
if (ret)
|
||||
break;
|
||||
ret1 = test_event(e);
|
||||
if (ret1)
|
||||
ret2 = ret1;
|
||||
}
|
||||
|
||||
return ret;
|
||||
return ret2;
|
||||
}
|
||||
|
||||
static int test_term(struct test__term *t)
|
||||
|
@ -1021,13 +1021,13 @@ static int test_pmu(void)
|
|||
|
||||
int parse_events__test(void)
|
||||
{
|
||||
int ret;
|
||||
int ret1, ret2 = 0;
|
||||
|
||||
#define TEST_EVENTS(tests) \
|
||||
do { \
|
||||
ret = test_events(tests, ARRAY_SIZE(tests)); \
|
||||
if (ret) \
|
||||
return ret; \
|
||||
ret1 = test_events(tests, ARRAY_SIZE(tests)); \
|
||||
if (!ret2) \
|
||||
ret2 = ret1; \
|
||||
} while (0)
|
||||
|
||||
TEST_EVENTS(test__events);
|
||||
|
@ -1035,5 +1035,9 @@ do { \
|
|||
if (test_pmu())
|
||||
TEST_EVENTS(test__events_pmu);
|
||||
|
||||
return test_terms(test__terms, ARRAY_SIZE(test__terms));
|
||||
ret1 = test_terms(test__terms, ARRAY_SIZE(test__terms));
|
||||
if (!ret2)
|
||||
ret2 = ret1;
|
||||
|
||||
return ret2;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue