[PATCH] kasan: move tests to mm/kasan/

From: andrey . konovalov
Date: Mon Sep 05 2022 - 18:18:48 EST


From: Andrey Konovalov <andreyknvl@xxxxxxxxxx>

Move KASAN tests to mm/kasan/ to keep the test code alongside the
implementation.

Signed-off-by: Andrey Konovalov <andreyknvl@xxxxxxxxxx>
---
MAINTAINERS | 1 -
lib/Makefile | 5 -----
mm/kasan/Makefile | 8 ++++++++
lib/test_kasan.c => mm/kasan/kasan_test.c | 2 +-
lib/test_kasan_module.c => mm/kasan/kasan_test_module.c | 2 +-
5 files changed, 10 insertions(+), 8 deletions(-)
rename lib/test_kasan.c => mm/kasan/kasan_test.c (99%)
rename lib/test_kasan_module.c => mm/kasan/kasan_test_module.c (99%)

diff --git a/MAINTAINERS b/MAINTAINERS
index 589517372408..31b3e4b11e01 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -10938,7 +10938,6 @@ F: arch/*/include/asm/*kasan.h
F: arch/*/mm/kasan_init*
F: include/linux/kasan*.h
F: lib/Kconfig.kasan
-F: lib/test_kasan*.c
F: mm/kasan/
F: scripts/Makefile.kasan

diff --git a/lib/Makefile b/lib/Makefile
index ffabc30a27d4..928d7605c35c 100644
--- a/lib/Makefile
+++ b/lib/Makefile
@@ -65,11 +65,6 @@ obj-$(CONFIG_TEST_SYSCTL) += test_sysctl.o
obj-$(CONFIG_TEST_SIPHASH) += test_siphash.o
obj-$(CONFIG_HASH_KUNIT_TEST) += test_hash.o
obj-$(CONFIG_TEST_IDA) += test_ida.o
-obj-$(CONFIG_KASAN_KUNIT_TEST) += test_kasan.o
-CFLAGS_test_kasan.o += -fno-builtin
-CFLAGS_test_kasan.o += $(call cc-disable-warning, vla)
-obj-$(CONFIG_KASAN_MODULE_TEST) += test_kasan_module.o
-CFLAGS_test_kasan_module.o += -fno-builtin
obj-$(CONFIG_TEST_UBSAN) += test_ubsan.o
CFLAGS_test_ubsan.o += $(call cc-disable-warning, vla)
UBSAN_SANITIZE_test_ubsan.o := y
diff --git a/mm/kasan/Makefile b/mm/kasan/Makefile
index 1f84df9c302e..d4837bff3b60 100644
--- a/mm/kasan/Makefile
+++ b/mm/kasan/Makefile
@@ -35,7 +35,15 @@ CFLAGS_shadow.o := $(CC_FLAGS_KASAN_RUNTIME)
CFLAGS_hw_tags.o := $(CC_FLAGS_KASAN_RUNTIME)
CFLAGS_sw_tags.o := $(CC_FLAGS_KASAN_RUNTIME)

+CFLAGS_KASAN_TEST := $(CFLAGS_KASAN) -fno-builtin $(call cc-disable-warning, vla)
+
+CFLAGS_kasan_test.o := $(CFLAGS_KASAN_TEST)
+CFLAGS_kasan_test_module.o := $(CFLAGS_KASAN_TEST)
+
obj-y := common.o report.o
obj-$(CONFIG_KASAN_GENERIC) += init.o generic.o report_generic.o shadow.o quarantine.o
obj-$(CONFIG_KASAN_HW_TAGS) += hw_tags.o report_hw_tags.o tags.o report_tags.o
obj-$(CONFIG_KASAN_SW_TAGS) += init.o report_sw_tags.o shadow.o sw_tags.o tags.o report_tags.o
+
+obj-$(CONFIG_KASAN_KUNIT_TEST) += kasan_test.o
+obj-$(CONFIG_KASAN_MODULE_TEST) += kasan_test_module.o
diff --git a/lib/test_kasan.c b/mm/kasan/kasan_test.c
similarity index 99%
rename from lib/test_kasan.c
rename to mm/kasan/kasan_test.c
index 505f77ffad27..f25692def781 100644
--- a/lib/test_kasan.c
+++ b/mm/kasan/kasan_test.c
@@ -25,7 +25,7 @@

#include <kunit/test.h>

-#include "../mm/kasan/kasan.h"
+#include "kasan.h"

#define OOB_TAG_OFF (IS_ENABLED(CONFIG_KASAN_GENERIC) ? 0 : KASAN_GRANULE_SIZE)

diff --git a/lib/test_kasan_module.c b/mm/kasan/kasan_test_module.c
similarity index 99%
rename from lib/test_kasan_module.c
rename to mm/kasan/kasan_test_module.c
index b112cbc835e9..e4ca82dc2c16 100644
--- a/lib/test_kasan_module.c
+++ b/mm/kasan/kasan_test_module.c
@@ -13,7 +13,7 @@
#include <linux/slab.h>
#include <linux/uaccess.h>

-#include "../mm/kasan/kasan.h"
+#include "kasan.h"

static noinline void __init copy_user_test(void)
{
--
2.25.1