On Fri, Feb 14, 2025 at 4:48 AM Peter Zijlstra peterz@infradead.org wrote:
On Thu, Feb 13, 2025 at 10:42:24AM -0500, Tamir Duberstein wrote:
On Thu, Feb 13, 2025 at 6:59 AM Peter Zijlstra peterz@infradead.org wrote:
On Thu, Feb 13, 2025 at 06:40:20AM -0500, Tamir Duberstein wrote:
Convert this unit test to a KUnit test. This allows the test to benefit from the KUnit tooling. Note that care is taken to avoid test-ending assertions in worker threads, which is unsafe in KUnit (and wasn't done before this change either).
So this was something simple, and now I need to know how to operate this kunit nonsense :-(
How is that an improvement?
Hi Peter,
David enumerated some of the benefits of KUnit in another thread: https://lore.kernel.org/all/CABVgOS=KZrM2dWyp1HzVS0zh7vquLxmTY2T2Ti53DQADrW+....
My personal reason for preferring KUnit is that it's much easier to run from userspace; the tooling takes care of building, starting the VM, running the tests, and producing a human-friendly report.
Wait what -- you have to run a VM just to use Kunit? That's a hard pass.
If I can't simply run it natively on my test box, its a no go. And it using python also don't help, you shouldn't be needing that to load a module.
The tooling I mention is all optional. You can still use modprobe to run the test as a module or at boot. In this case you'd set:
CONFIG_KUNIT=y CONFIG_WW_MUTEX_KUNIT_TEST=m
and then run the test via:
``` modprobe ww_mutex_kunit ```
or to run at boot:
CONFIG_KUNIT=y CONFIG_WW_MUTEX_KUNIT_TEST=y
Link: https://www.kernel.org/doc/html/latest/dev-tools/kunit/running_tips.html#run... Link: https://www.kernel.org/doc/html/latest/dev-tools/kunit/running_tips.html#run...