From: Scott Mayhew Date: Thu, 21 Mar 2024 14:32:00 +0000 (-0400) Subject: kunit: bail out early in __kunit_test_suites_init() if there are no suites to test X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=5496b9b77d7420652202b73cf036e69760be5deb;p=linux.git 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 Signed-off-by: Scott Mayhew Reviewed-by: Rae Moar Reviewed-by: David Gow Signed-off-by: Shuah Khan --- diff --git a/lib/kunit/test.c b/lib/kunit/test.c index 1d1475578515c..b8514dbb337c0 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;