On Fri, Mar 12, 2021 at 03:24PM +0100, Andrey Konovalov wrote: > Update the "Tests" section in KASAN documentation: > > - Add an introductory sentence. > - Add proper indentation for the list of ways to run KUnit tests. > - Punctuation, readability, and other minor clean-ups. > > Signed-off-by: Andrey Konovalov <andreyknvl@xxxxxxxxxx> Reviewed-by: Marco Elver <elver@xxxxxxxxxx> > --- > > Changes v1->v2: > - Fix missing snippet delimeter around "test_kasan.ko". > - Drop "the" before "test_kasan.ko". > --- > Documentation/dev-tools/kasan.rst | 32 +++++++++++++++---------------- > 1 file changed, 15 insertions(+), 17 deletions(-) > > diff --git a/Documentation/dev-tools/kasan.rst b/Documentation/dev-tools/kasan.rst > index 5749c14b38d0..a8c3e0cff88d 100644 > --- a/Documentation/dev-tools/kasan.rst > +++ b/Documentation/dev-tools/kasan.rst > @@ -411,19 +411,20 @@ saving and restoring the per-page KASAN tag via > Tests > ~~~~~ > > -KASAN tests consist of two parts: > +There are KASAN tests that allow verifying that KASAN works and can detect > +certain types of memory corruptions. The tests consist of two parts: > > 1. Tests that are integrated with the KUnit Test Framework. Enabled with > ``CONFIG_KASAN_KUNIT_TEST``. These tests can be run and partially verified > -automatically in a few different ways, see the instructions below. > +automatically in a few different ways; see the instructions below. > > 2. Tests that are currently incompatible with KUnit. Enabled with > ``CONFIG_KASAN_MODULE_TEST`` and can only be run as a module. These tests can > -only be verified manually, by loading the kernel module and inspecting the > +only be verified manually by loading the kernel module and inspecting the > kernel log for KASAN reports. > > -Each KUnit-compatible KASAN test prints a KASAN report if an error is detected. > -Then the test prints its number and status. > +Each KUnit-compatible KASAN test prints one of multiple KASAN reports if an > +error is detected. Then the test prints its number and status. > > When a test passes:: > > @@ -451,27 +452,24 @@ Or, if one of the tests failed:: > > not ok 1 - kasan > > - > There are a few ways to run KUnit-compatible KASAN tests. > > 1. Loadable module > > -With ``CONFIG_KUNIT`` enabled, ``CONFIG_KASAN_KUNIT_TEST`` can be built as > -a loadable module and run on any architecture that supports KASAN by loading > -the module with insmod or modprobe. The module is called ``test_kasan``. > + With ``CONFIG_KUNIT`` enabled, KASAN-KUnit tests can be built as a loadable > + module and run by loading ``test_kasan.ko`` with ``insmod`` or ``modprobe``. > > 2. Built-In > > -With ``CONFIG_KUNIT`` built-in, ``CONFIG_KASAN_KUNIT_TEST`` can be built-in > -on any architecure that supports KASAN. These and any other KUnit tests enabled > -will run and print the results at boot as a late-init call. > + With ``CONFIG_KUNIT`` built-in, KASAN-KUnit tests can be built-in as well. > + In this case, the tests will run at boot as a late-init call. > > 3. Using kunit_tool > > -With ``CONFIG_KUNIT`` and ``CONFIG_KASAN_KUNIT_TEST`` built-in, it's also > -possible use ``kunit_tool`` to see the results of these and other KUnit tests > -in a more readable way. This will not print the KASAN reports of the tests that > -passed. Use `KUnit documentation <https://www.kernel.org/doc/html/latest/dev-tools/kunit/index.html>`_ > -for more up-to-date information on ``kunit_tool``. > + With ``CONFIG_KUNIT`` and ``CONFIG_KASAN_KUNIT_TEST`` built-in, it is also > + possible to use ``kunit_tool`` to see the results of KUnit tests in a more > + readable way. This will not print the KASAN reports of the tests that passed. > + See `KUnit documentation <https://www.kernel.org/doc/html/latest/dev-tools/kunit/index.html>`_ > + for more up-to-date information on ``kunit_tool``. > > .. _KUnit: https://www.kernel.org/doc/html/latest/dev-tools/kunit/index.html > -- > 2.31.0.rc2.261.g7f71774620-goog >