[tip: perf/urgent] perf/hw_breakpoint: test: Skip the test if dependencies unmet

From: tip-bot2 for David Gow
Date: Wed Nov 02 2022 - 18:23:27 EST


The following commit has been merged into the perf/urgent branch of tip:

Commit-ID: 4b18cb3f74dcfc183c2434e17bfce09ce6302e37
Gitweb: https://git.kernel.org/tip/4b18cb3f74dcfc183c2434e17bfce09ce6302e37
Author: David Gow <davidgow@xxxxxxxxxx>
AuthorDate: Wed, 26 Oct 2022 22:10:40 +08:00
Committer: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
CommitterDate: Wed, 02 Nov 2022 12:22:05 +01:00

perf/hw_breakpoint: test: Skip the test if dependencies unmet

Running the test currently fails on non-SMP systems, despite being
enabled by default. This means that running the test with:

./tools/testing/kunit/kunit.py run --arch x86_64 hw_breakpoint

results in every hw_breakpoint test failing with:

# test_one_cpu: failed to initialize: -22
not ok 1 - test_one_cpu

Instead, use kunit_skip(), which will mark the test as skipped, and give
a more comprehensible message:

ok 1 - test_one_cpu # SKIP not enough cpus

This makes it more obvious that the test is not suited to the test
environment, and so wasn't run, rather than having run and failed.

Signed-off-by: David Gow <davidgow@xxxxxxxxxx>
Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
Reviewed-by: Daniel Latypov <dlatypov@xxxxxxxxxx>
Acked-by: Marco Elver <elver@xxxxxxxxxx>
Link: https://lore.kernel.org/r/20221026141040.1609203-1-davidgow@xxxxxxxxxx
---
kernel/events/hw_breakpoint_test.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/kernel/events/hw_breakpoint_test.c b/kernel/events/hw_breakpoint_test.c
index 5ced822..c57610f 100644
--- a/kernel/events/hw_breakpoint_test.c
+++ b/kernel/events/hw_breakpoint_test.c
@@ -295,11 +295,11 @@ static int test_init(struct kunit *test)
{
/* Most test cases want 2 distinct CPUs. */
if (num_online_cpus() < 2)
- return -EINVAL;
+ kunit_skip(test, "not enough cpus");

/* Want the system to not use breakpoints elsewhere. */
if (hw_breakpoint_is_used())
- return -EBUSY;
+ kunit_skip(test, "hw breakpoint already in use");

return 0;
}