Re: Enabling additional KUnit tests in KernelCI?

Eric Biggers <[email protected]> Sat, 18 Apr 2026 17:50:19 -0700
Newsgroups dev.linux.lists.kernelci
Message-ID <20260419005019.GA18115@quark>
On Fri, Mar 13, 2026 at 12:31:41PM +0000, Mark Brown wrote:
> On Fri, Mar 13, 2026 at 01:04:56AM +0000, Eric Biggers wrote:
> > On Thu, Mar 12, 2026 at 11:34:51PM +0000, Mark Brown wrote:
> 
> > > Whatever is enabled by the KUnit runner tools/testing/kunit/kunit.py
> > > (which makes x86_64 a bit of an unfortunate choice given how slim theilr
> > > defconfig is).  The theory is that the KUnit configs will do the right
> 
> > Yes, the tests run by kunit.py depend on the args passed to it.  It
> > looks like without any arguments it runs all tests available with
> > defconfig + tools/testing/kunit/configs/default.config.  With
> > --alltests, it runs all tests available with defconfig +
> > tools/testing/kunit/configs/all_tests.config.  Both set
> > "CONFIG_KUNIT_ALL_TESTS=y", so the difference is just what additional
> > options get enabled to fulfill the test dependencies.  all_tests.config
> > enables more dependencies than default.config.
> 
> Yes, exactly.
> 
> > So I think KernelCI should start passing --alltests to kunit.py, and I
> > should get the dependencies for all the crypto and CRC tests added to
> > tools/testing/kunit/configs/all_tests.config.  Then KernelCI would pick
> > them up automatically.
> 
> That sounds like a plan.
> 
> > > The KUnit runner uses qemu as standard which I guess is probably fine
> > > for an initial pass, we would need to do a bunch more plumbing to run on
> > > actual hardware and pull the results out.  We'd also be restricted by
> > > what's available to us, at the minute we've got arm, arm64, riscv and
> > > x86 systems with a bit of an embedded focus.
> 
> > It seems kunit.py uses UML by default, though it accepts an --arch
> > argument which enables QEMU.  So something to think about for KernelCI
> > would be to run all KUnit tests with different combinations of --arch.
> 
> Right, and UML only works with an x86 host which is fun.  qemu is the
> standard way of running for a specific architecture.

Just to follow up on this, in mainline 'kunit.py run --alltests' now
runs all the CRC and crypto library KUnit tests.

It looks like the kunit job on KernelCI is still running only on the 6.1
kernel.  Will it be enabled on newer kernels?

- Eric