Re: [PATCH v2 00/17] kunit: introduce KUnit, the Linux kernel unit testing framework

From: Theodore Ts'o
Date: Thu May 09 2019 - 17:45:32 EST


On Thu, May 09, 2019 at 11:12:12AM -0700, Frank Rowand wrote:
>
> "My understanding is that the intent of KUnit is to avoid booting a kernel on
> real hardware or in a virtual machine. That seems to be a matter of semantics
> to me because isn't invoking a UML Linux just running the Linux kernel in
> a different form of virtualization?
>
> So I do not understand why KUnit is an improvement over kselftest.
>
> ...
>
> What am I missing?"

One major difference: kselftest requires a userspace environment; it
starts systemd, requires a root file system from which you can load
modules, etc. Kunit doesn't require a root file system; doesn't
require that you start systemd; doesn't allow you to run arbitrary
perl, python, bash, etc. scripts. As such, it's much lighter weight
than kselftest, and will have much less overhead before you can start
running tests. So it's not really the same kind of virtualization.

Does this help?

- Ted