[PATCH 2/2] kunit: ubsan integration

From: Uriel Guajardo
Date: Thu Aug 06 2020 - 13:44:04 EST


Integrates UBSAN into the KUnit testing framework. It fails KUnit tests
whenever it reports undefined behavior.

Signed-off-by: Uriel Guajardo <urielguajardo@xxxxxxxxxx>
---
lib/ubsan.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/lib/ubsan.c b/lib/ubsan.c
index cb9af3f6b77e..1460e2c828c8 100644
--- a/lib/ubsan.c
+++ b/lib/ubsan.c
@@ -14,6 +14,7 @@
#include <linux/types.h>
#include <linux/sched.h>
#include <linux/uaccess.h>
+#include <kunit/test.h>

#include "ubsan.h"

@@ -137,6 +138,7 @@ static void ubsan_prologue(struct source_location *loc, const char *reason)
{
current->in_ubsan++;

+ kunit_fail_current_test();
pr_err("========================================"
"========================================\n");
pr_err("UBSAN: %s in %s:%d:%d\n", reason, loc->file_name,
--
2.28.0.163.g6104cc2f0b6-goog