mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-09 07:51:16 -04:00
perf test: Skip not fail tp fields test when insufficient permissions
Clean up return value to be TEST_* rather than unspecific integer. Add test case skip reason. Skip test if EACCES comes back from evsel__newtp. Signed-off-by: Ian Rogers <irogers@google.com> Link: https://lore.kernel.org/r/20241001052327.7052-4-irogers@google.com Signed-off-by: Namhyung Kim <namhyung@kernel.org>
This commit is contained in:
@@ -36,33 +36,33 @@ static int test__perf_evsel__tp_sched_test(struct test_suite *test __maybe_unuse
|
||||
int subtest __maybe_unused)
|
||||
{
|
||||
struct evsel *evsel = evsel__newtp("sched", "sched_switch");
|
||||
int ret = 0;
|
||||
int ret = TEST_OK;
|
||||
|
||||
if (IS_ERR(evsel)) {
|
||||
pr_debug("evsel__newtp failed with %ld\n", PTR_ERR(evsel));
|
||||
return -1;
|
||||
return PTR_ERR(evsel) == -EACCES ? TEST_SKIP : TEST_FAIL;
|
||||
}
|
||||
|
||||
if (evsel__test_field(evsel, "prev_comm", 16, false))
|
||||
ret = -1;
|
||||
ret = TEST_FAIL;
|
||||
|
||||
if (evsel__test_field(evsel, "prev_pid", 4, true))
|
||||
ret = -1;
|
||||
ret = TEST_FAIL;
|
||||
|
||||
if (evsel__test_field(evsel, "prev_prio", 4, true))
|
||||
ret = -1;
|
||||
ret = TEST_FAIL;
|
||||
|
||||
if (evsel__test_field(evsel, "prev_state", sizeof(long), true))
|
||||
ret = -1;
|
||||
ret = TEST_FAIL;
|
||||
|
||||
if (evsel__test_field(evsel, "next_comm", 16, false))
|
||||
ret = -1;
|
||||
ret = TEST_FAIL;
|
||||
|
||||
if (evsel__test_field(evsel, "next_pid", 4, true))
|
||||
ret = -1;
|
||||
ret = TEST_FAIL;
|
||||
|
||||
if (evsel__test_field(evsel, "next_prio", 4, true))
|
||||
ret = -1;
|
||||
ret = TEST_FAIL;
|
||||
|
||||
evsel__delete(evsel);
|
||||
|
||||
@@ -70,23 +70,33 @@ static int test__perf_evsel__tp_sched_test(struct test_suite *test __maybe_unuse
|
||||
|
||||
if (IS_ERR(evsel)) {
|
||||
pr_debug("evsel__newtp failed with %ld\n", PTR_ERR(evsel));
|
||||
return -1;
|
||||
return TEST_FAIL;
|
||||
}
|
||||
|
||||
if (evsel__test_field(evsel, "comm", 16, false))
|
||||
ret = -1;
|
||||
ret = TEST_FAIL;
|
||||
|
||||
if (evsel__test_field(evsel, "pid", 4, true))
|
||||
ret = -1;
|
||||
ret = TEST_FAIL;
|
||||
|
||||
if (evsel__test_field(evsel, "prio", 4, true))
|
||||
ret = -1;
|
||||
ret = TEST_FAIL;
|
||||
|
||||
if (evsel__test_field(evsel, "target_cpu", 4, true))
|
||||
ret = -1;
|
||||
ret = TEST_FAIL;
|
||||
|
||||
evsel__delete(evsel);
|
||||
return ret;
|
||||
}
|
||||
|
||||
DEFINE_SUITE("Parse sched tracepoints fields", perf_evsel__tp_sched_test);
|
||||
static struct test_case tests__perf_evsel__tp_sched_test[] = {
|
||||
TEST_CASE_REASON("Parse sched tracepoints fields",
|
||||
perf_evsel__tp_sched_test,
|
||||
"permissions"),
|
||||
{ .name = NULL, }
|
||||
};
|
||||
|
||||
struct test_suite suite__perf_evsel__tp_sched_test = {
|
||||
.desc = "Parse sched tracepoints fields",
|
||||
.test_cases = tests__perf_evsel__tp_sched_test,
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user