On Sat, Jul 2, 2022 at 12:10 PM David Gow <davidgow@xxxxxxxxxx> wrote: > > Make any kselftest test module (using the kselftest_module framework) > taint the kernel with TAINT_TEST on module load. > > Also mark the module as a test module using MODULE_INFO(test, "Y") so > that other tools can tell this is a test module. We can't rely solely > on this, though, as these test modules are also often built-in. > > Finally, update the kselftest documentation to mention that the kernel > should be tainted, and how to do so manually (as below). > > Note that several selftests use kernel modules which are not based on > the kselftest_module framework, and so will not automatically taint the > kernel. > > This can be done in two ways: > - Moving the module to the tools/testing directory. All modules under > this directory will taint the kernel. > - Adding the 'test' module property with: > MODULE_INFO(test, "Y") > > Similarly, selftests which do not load modules into the kernel generally > should not taint the kernel (or possibly should only do so on failure), > as it's assumed that testing from user-space should be safe. Regardless, > they can write to /proc/sys/kernel/tainted if required. > > Reviewed-by: Luis Chamberlain <mcgrof@xxxxxxxxxx> > Signed-off-by: David Gow <davidgow@xxxxxxxxxx> > --- Whoops: forgot the changelogs. Only patches 2 and 4 had changes. For this patch: Changes since v4: https://lore.kernel.org/lkml/20220513083212.3537869-3-davidgow@xxxxxxxxxx/ - Actually use the new TAINT_TEST name, instead of TAINT_KUNIT (Thanks, kernel-test-robot) - Document how to use this (or MODULE_INFO()) to taint the kernel. (Thanks, Luis) - Also add MODULE_INFO(test, "Y") to embed the fact that this is a test module into the .ko - Nothing depends on it now, but it should allow us to tell this is a test module without executing it in the future. No changes since v3: https://lore.kernel.org/lkml/20220513083212.3537869-3-davidgow@xxxxxxxxxx/
Attachment:
smime.p7s
Description: S/MIME Cryptographic Signature