Commit 6ae2bfd3 authored by Alan Maguire's avatar Alan Maguire Committed by Shuah Khan

kunit: update documentation to describe module-based build

Documentation should describe how to build kunit and tests as
modules.
Co-developed-by: default avatarKnut Omang <knut.omang@oracle.com>
Signed-off-by: default avatarKnut Omang <knut.omang@oracle.com>
Signed-off-by: default avatarAlan Maguire <alan.maguire@oracle.com>
Reviewed-by: default avatarStephen Boyd <swboyd@chromium.org>
Reviewed-by: default avatarBrendan Higgins <brendanhiggins@google.com>
Signed-off-by: default avatarShuah Khan <skhan@linuxfoundation.org>
parent 9fe124bf
...@@ -29,7 +29,8 @@ Yes, well, mostly. ...@@ -29,7 +29,8 @@ Yes, well, mostly.
For the most part, the KUnit core framework (what you use to write the tests) For the most part, the KUnit core framework (what you use to write the tests)
can compile to any architecture; it compiles like just another part of the can compile to any architecture; it compiles like just another part of the
kernel and runs when the kernel boots. However, there is some infrastructure, kernel and runs when the kernel boots, or when built as a module, when the
module is loaded. However, there is some infrastructure,
like the KUnit Wrapper (``tools/testing/kunit/kunit.py``) that does not support like the KUnit Wrapper (``tools/testing/kunit/kunit.py``) that does not support
other architectures. other architectures.
......
...@@ -49,6 +49,9 @@ to a standalone program that can be run like any other program directly inside ...@@ -49,6 +49,9 @@ to a standalone program that can be run like any other program directly inside
of a host operating system; to be clear, it does not require any virtualization of a host operating system; to be clear, it does not require any virtualization
support; it is just a regular program. support; it is just a regular program.
Alternatively, kunit and kunit tests can be built as modules and tests will
run when the test module is loaded.
KUnit is fast. Excluding build time, from invocation to completion KUnit can run KUnit is fast. Excluding build time, from invocation to completion KUnit can run
several dozen tests in only 10 to 20 seconds; this might not sound like a big several dozen tests in only 10 to 20 seconds; this might not sound like a big
deal to some people, but having such fast and easy to run tests fundamentally deal to some people, but having such fast and easy to run tests fundamentally
......
...@@ -539,6 +539,22 @@ Interspersed in the kernel logs you might see the following: ...@@ -539,6 +539,22 @@ Interspersed in the kernel logs you might see the following:
Congratulations, you just ran a KUnit test on the x86 architecture! Congratulations, you just ran a KUnit test on the x86 architecture!
In a similar manner, kunit and kunit tests can also be built as modules,
so if you wanted to run tests in this way you might add the following config
options to your ``.config``:
.. code-block:: none
CONFIG_KUNIT=m
CONFIG_KUNIT_EXAMPLE_TEST=m
Once the kernel is built and installed, a simple
.. code-block:: bash
modprobe example-test
...will run the tests.
Writing new tests for other architectures Writing new tests for other architectures
----------------------------------------- -----------------------------------------
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment