[PATCH 1/1] of: unittest: taint the kernel when of unittest runs

From: frowand . list
Date: Tue Aug 23 2022 - 16:28:57 EST


From: Frank Rowand <frank.rowand@xxxxxxxx>

Make OF unittest trigger the new TAINT_TEST taint when OF unittest runs.
Due to OF unittest not being intended to run on production systems, and
potentially causing problems (or security issues like leaking kernel
addresses), the kernel's state should not be considered safe for
production use after OF unittest runs.

Signed-off-by: Frank Rowand <frank.rowand@xxxxxxxx>
---

Follow the precedent set by KUnit tests in v6.0-rc1:
commit c272612cb4a2 ("kunit: Taint the kernel when KUnit tests are run")
commit 2852ca7fba9f ("panic: Taint kernel if tests are run")

drivers/of/unittest.c | 3 +++
1 file changed, 3 insertions(+)

diff --git a/drivers/of/unittest.c b/drivers/of/unittest.c
index eafa8ffefbd0..4f8cc1b21ac4 100644
--- a/drivers/of/unittest.c
+++ b/drivers/of/unittest.c
@@ -3467,6 +3467,9 @@ static int __init of_unittest(void)

pr_info("start of unittest - you will see error messages\n");

+ /* Taint the kernel so we know we've run tests. */
+ add_taint(TAINT_TEST, LOCKDEP_STILL_OK);
+
/* adding data for unittest */

if (IS_ENABLED(CONFIG_UML))
--
Frank Rowand <frank.rowand@xxxxxxxx>