Skip to content

Commit

Permalink
perf test: Do not abort tests on error
Browse files Browse the repository at this point in the history
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>
  • Loading branch information
Robert Richter authored and Arnaldo Carvalho de Melo committed Aug 22, 2012
1 parent d45a3e0 commit 9bfbbc6
Showing 1 changed file with 14 additions and 10 deletions.
24 changes: 14 additions & 10 deletions tools/perf/util/parse-events-test.c
Original file line number Diff line number Diff line change
Expand Up @@ -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)
Expand Down Expand Up @@ -1021,19 +1021,23 @@ 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);

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;
}

0 comments on commit 9bfbbc6

Please sign in to comment.