aboutsummaryrefslogtreecommitdiffstats
path: root/rust/helpers/vmalloc.c
diff options
context:
space:
mode:
authorVlastimil Babka <[email protected]>2024-10-01 16:20:49 +0000
committerVlastimil Babka <[email protected]>2024-10-02 14:28:46 +0000
commitcac39b0706f186ce01b9dd1c3802846528d1bbca (patch)
treebdc12282f97b71b0bbd0b45a0813c834735095d6 /rust/helpers/vmalloc.c
parentmm, slab: suppress warnings in test_leak_destroy kunit test (diff)
downloadkernel-cac39b0706f186ce01b9dd1c3802846528d1bbca.tar.gz
kernel-cac39b0706f186ce01b9dd1c3802846528d1bbca.zip
slub/kunit: skip test_kfree_rcu when the slub kunit test is built-in
Guenter Roeck reports that the new slub kunit tests added by commit 4e1c44b3db79 ("kunit, slub: add test_kfree_rcu() and test_leak_destroy()") cause a lockup on boot on several architectures when the kunit tests are configured to be built-in and not modules. The test_kfree_rcu test invokes kfree_rcu() and boot sequence inspection showed the runner for built-in kunit tests kunit_run_all_tests() is called before setting system_state to SYSTEM_RUNNING and calling rcu_end_inkernel_boot(), so this seems like a likely cause. So while I was unable to reproduce the problem myself, skipping the test when the slub_kunit module is built-in should avoid the issue. An alternative fix that was moving the call to kunit_run_all_tests() a bit later in the boot was tried, but has broken tests with functions marked as __init due to free_initmem() already being done. Fixes: 4e1c44b3db79 ("kunit, slub: add test_kfree_rcu() and test_leak_destroy()") Reported-by: Guenter Roeck <[email protected]> Closes: https://lore.kernel.org/all/[email protected]/ Cc: Paul E. McKenney <[email protected]> Cc: Boqun Feng <[email protected]> Cc: Uladzislau Rezki <[email protected]> Cc: [email protected] Cc: Brendan Higgins <[email protected]> Cc: David Gow <[email protected]> Cc: Rae Moar <[email protected]> Cc: [email protected] Cc: [email protected] Tested-by: Guenter Roeck <[email protected]> Signed-off-by: Vlastimil Babka <[email protected]>
Diffstat (limited to 'rust/helpers/vmalloc.c')
0 files changed, 0 insertions, 0 deletions