summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorScott Mayhew <smayhew@redhat.com>2024-03-21 15:32:00 +0100
committerShuah Khan <skhan@linuxfoundation.org>2024-05-06 22:22:02 +0200
commit5496b9b77d7420652202b73cf036e69760be5deb (patch)
tree6f448fc462dfea34af39ef98d0e7cd7e255d0398 /lib
parentkunit: string-stream-test: use KUNIT_DEFINE_ACTION_WRAPPER (diff)
downloadlinux-5496b9b77d7420652202b73cf036e69760be5deb.tar.xz
linux-5496b9b77d7420652202b73cf036e69760be5deb.zip
kunit: bail out early in __kunit_test_suites_init() if there are no suites to test
Commit c72a870926c2 added a mutex to prevent kunit tests from running concurrently. Unfortunately that mutex gets locked during module load regardless of whether the module actually has any kunit tests. This causes a problem for kunit tests that might need to load other kernel modules (e.g. gss_krb5_test loading the camellia module). So check to see if there are actually any tests to run before locking the kunit_run_lock mutex. Fixes: c72a870926c2 ("kunit: add ability to run tests after boot using debugfs") Reported-by: Nico Pache <npache@redhat.com> Signed-off-by: Scott Mayhew <smayhew@redhat.com> Reviewed-by: Rae Moar <rmoar@google.com> Reviewed-by: David Gow <davidgow@google.com> Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
Diffstat (limited to 'lib')
-rw-r--r--lib/kunit/test.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/kunit/test.c b/lib/kunit/test.c
index 1d1475578515..b8514dbb337c 100644
--- a/lib/kunit/test.c
+++ b/lib/kunit/test.c
@@ -712,6 +712,9 @@ int __kunit_test_suites_init(struct kunit_suite * const * const suites, int num_
{
unsigned int i;
+ if (num_suites == 0)
+ return 0;
+
if (!kunit_enabled() && num_suites > 0) {
pr_info("kunit: disabled\n");
return 0;