Hi Linus,
Please pull the following KUnit update for Linux 5.20-rc1.
This KUnit update for Linux 5.20-rc1 consists of several fixes and an important feature to discourage running KUnit tests on production systems. Running tests on a production system could leave the system in a bad state. This new feature adds:
- adds a new taint type, TAINT_TEST to signal that a test has been run. This should discourage people from running these tests on production systems, and to make it easier to tell if tests have been run accidentally (by loading the wrong configuration, etc.)
- several documentation and tool enhancements and fixes.
Please note that this KUnit update touches drivers, lib, kernel files for the TAINT_TEST feature.
diff is attached.
thanks, -- Shuah
---------------------------------------------------------------- The following changes since commit f2906aa863381afb0015a9eb7fefad885d4e5a56:
Linux 5.19-rc1 (2022-06-05 17:18:54 -0700)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest tags/linux-kselftest-kunit-5.20-rc1
for you to fetch changes up to 4c392516accfe51a1aaf80ed163517646f8f0476:
Documentation: KUnit: Fix example with compilation error (2022-07-28 13:06:35 -0600)
---------------------------------------------------------------- linux-kselftest-kunit-5.20-rc1
This KUnit update for Linux 5.20-rc1 consists of several fixes and an important feature to discourage running KUnit tests on production systems. Running tests on a production system could leave the system in a bad state. This new feature adds:
- adds a new taint type, TAINT_TEST to signal that a test has been run. This should discourage people from running these tests on production systems, and to make it easier to tell if tests have been run accidentally (by loading the wrong configuration, etc.)
- several documentation and tool enhancements and fixes.
---------------------------------------------------------------- Daniel Latypov (13): kunit: use kmemdup in kunit_filter_tests(), take suite as const kunit: tool: drop unused load_config argument kunit: tool: redo how we construct and mock LinuxSourceTree kunit: tool: refactoring printing logic into kunit_printer.py kunit: tool: cosmetic: don't specify duplicate kernel cmdline options kunit: tool: simplify creating LinuxSourceTreeOperations kunit: tool: introduce --qemu_args kunit: tool: refactor internal kconfig handling, allow overriding kunit: add coverage_uml.config to enable GCOV on UML kunit: tool: make --kunitconfig repeatable, blindly concat Documentation: kunit: fix example run_kunit func to allow spaces in args kunit: flatten kunit_suite*** to kunit_suite** in .kunit_test_suites clk: explicitly disable CONFIG_UML_PCI_OVER_VIRTIO in .kunitconfig
David Gow (12): panic: Taint kernel if tests are run kunit: Taint the kernel when KUnit tests are run apparmor: test: Remove some casts which are no-longer required kunit: tool: Enable virtio/PCI by default on UML Documentation: kunit: Cleanup run_wrapper, fix x-ref module: panic: Taint the kernel when selftest modules load selftest: Taint kernel when test module loaded thunderbolt: test: Use kunit_test_suite() macro nitro_enclaves: test: Use kunit_test_suite() macro mmc: sdhci-of-aspeed: test: Use kunit_test_suite() macro kunit: executor: Fix a memory leak on failure in kunit_filter_tests kcsan: test: Add a .kunitconfig to run KCSAN tests
Jeremy Kerr (1): kunit: unify module and builtin suite definitions
Mauro Carvalho Chehab (1): kunit: test.h: fix a kernel-doc markup
Maíra Canal (1): Documentation: KUnit: Fix example with compilation error
Sadiya Kazi (1): Documentation: kunit: Add CLI args for kunit_tool
Documentation/admin-guide/tainted-kernels.rst | 1 + Documentation/dev-tools/kselftest.rst | 9 + Documentation/dev-tools/kunit/run_wrapper.rst | 81 ++++++++- Documentation/dev-tools/kunit/running_tips.rst | 5 +- Documentation/dev-tools/kunit/usage.rst | 2 +- drivers/clk/.kunitconfig | 1 + drivers/mmc/host/Kconfig | 5 +- drivers/mmc/host/sdhci-of-aspeed-test.c | 8 +- drivers/mmc/host/sdhci-of-aspeed.c | 34 +--- drivers/thunderbolt/Kconfig | 6 +- drivers/thunderbolt/domain.c | 3 - drivers/thunderbolt/tb.h | 8 - drivers/thunderbolt/test.c | 12 +- drivers/virt/nitro_enclaves/Kconfig | 5 +- drivers/virt/nitro_enclaves/ne_misc_dev.c | 27 --- drivers/virt/nitro_enclaves/ne_misc_dev_test.c | 5 +- include/kunit/test.h | 63 ++----- include/linux/module.h | 5 + include/linux/panic.h | 3 +- kernel/kcsan/.kunitconfig | 24 +++ kernel/module/main.c | 13 ++ kernel/panic.c | 1 + lib/kunit/executor.c | 125 ++++---------- lib/kunit/executor_test.c | 144 +++++----------- lib/kunit/test.c | 58 ++++++- scripts/mod/modpost.c | 3 + security/apparmor/policy_unpack_test.c | 12 +- tools/testing/kunit/configs/arch_uml.config | 5 + tools/testing/kunit/configs/coverage_uml.config | 11 ++ tools/testing/kunit/kunit.py | 83 +++++---- tools/testing/kunit/kunit_config.py | 54 +++--- tools/testing/kunit/kunit_kernel.py | 104 +++++++----- tools/testing/kunit/kunit_parser.py | 63 +++---- tools/testing/kunit/kunit_printer.py | 48 ++++++ tools/testing/kunit/kunit_tool_test.py | 214 +++++++++++++++--------- tools/testing/selftests/kselftest_module.h | 4 + 36 files changed, 657 insertions(+), 592 deletions(-) create mode 100644 kernel/kcsan/.kunitconfig create mode 100644 tools/testing/kunit/configs/arch_uml.config create mode 100644 tools/testing/kunit/configs/coverage_uml.config create mode 100644 tools/testing/kunit/kunit_printer.py ----------------------------------------------------------------