On Thu, Jul 21, 2022 at 7:54 PM David Gow <davidgow@xxxxxxxxxx> wrote: > > On Thu, Jul 21, 2022 at 4:26 PM Sadiya Kazi <sadiyakazi@xxxxxxxxxx> wrote: [...] > > Documentation/dev-tools/kunit/run_wrapper.rst | 60 ++++++++++++++++++- > > 1 file changed, 59 insertions(+), 1 deletion(-) > > > > diff --git a/Documentation/dev-tools/kunit/run_wrapper.rst b/Documentation/dev-tools/kunit/run_wrapper.rst > > index 5e560f2c5fca..600af7ac5f88 100644 > > --- a/Documentation/dev-tools/kunit/run_wrapper.rst > > +++ b/Documentation/dev-tools/kunit/run_wrapper.rst [...] > > @@ -257,3 +257,61 @@ command line arguments: > > added or modified. Instead, enable all tests > > which have satisfied dependencies by adding > > ``CONFIG_KUNIT_ALL_TESTS=y`` to your ``.kunitconfig``. > > + > > +- ``--kunitconfig``: Specifies the path or the directory of the ``.kunitconfig`` > > + file. For example: > > + > > + - ``lib/kunit/.kunitconfig`` can be the path of the file. > > + > > + - ``lib/kunit`` can be the directory in which the file is located. > > + > > + This file is used to build and run with a predefined set of tests > > + and their dependencies. For example, to run tests for a given subsystem. > > + > > +- ``--kconfig_add``: Specifies additional configuration options to be > > + appended to the ``.kunitconfig`` file. > > + For example, ``./tools/testing/kunit/kunit.py run --kconfig_add CONFIG_KASAN=y``. > > + > > Just FYI, this example won't work as-is until KASAN for UML is merged. > It's already sitting in uml/next, so this shouldn't be a problem: > https://git.kernel.org/pub/scm/linux/kernel/git/uml/linux.git/commit/?h=next&id=5b301409e8bc5d7fad2ee138be44c5c529dd0874 > > But if you want to try it on 5.19 or the current kunit branch, you'll > need to add, e.g., --arch=x86_64 > > > +- ``--arch``: Runs tests on the specified architecture. The architecture > > + specified must match the Kbuild ARCH environment variable. > > I'm not quite sold on 'must match the Kbuild ARCH environment > variable'. That seems to imply to me that you need to set ARCH= _and_ > use --arch. Instead, --arch itself sets ARCH=, so the values use the > same names. Agreed, I was just about to reply with a comment to the same effect. > > + For example, i386, x86_64, arm, um, etc. Non-UML architectures run on QEMU. > > + Default is `um`. > > + > > +- ``--cross_compile``: Specifies the Kbuild toolchain. It passes the > > + same argument as passed to the ``CROSS_COMPILE`` variable used by > > + Kbuild. This will be the prefix for the toolchain > > + binaries such as GCC. For example: > > + > > + - ``sparc64-linux-gnu-`` if we have the sparc toolchain installed on > > + our system. > > + > > + - ``$HOME/toolchains/microblaze/gcc-9.2.0-nolibc/microblaze-linux/bin/microblaze-linux`` > > + if we have downloaded the microblaze toolchain from the 0-day > > + website to a specified path in our home directory called toolchains. > > + > > +- ``--qemu_config``: Specifies the path to a file containing a > > + custom qemu architecture definition. This should be a python file > > + containing a `QemuArchParams` object. > > + > > +- ``--qemu_args``: Specifies additional QEMU arguments, for example, "-smp 8". > > + > > +- ``--jobs``: Specifies the number of jobs (commands) to run simultaneously.4 > > + By default, this is set to the number of cores on your system. > > + > > +- ``--timeout``: Specifies the maximum number of seconds allowed for all tests to run. > > + This does not include the time taken to build the tests. > > + > > +- ``--kernel_args``: Specifies additional kernel command-line arguments. Might be repeated. > > Nit: maybe "can be repeated"? As it's the reader of this documentation > who will likely be doing the repeating. Or "may be repeated"? +1 [...]