summaryrefslogtreecommitdiff
path: root/lib/Kconfig.kasan
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Kconfig.kasan')
-rw-r--r--lib/Kconfig.kasan18
1 files changed, 18 insertions, 0 deletions
diff --git a/lib/Kconfig.kasan b/lib/Kconfig.kasan
index bd38aab05929..0e6dc4f85f51 100644
--- a/lib/Kconfig.kasan
+++ b/lib/Kconfig.kasan
@@ -17,6 +17,8 @@ config KASAN
This feature consumes about 1/8 of available memory and brings about
~x3 performance slowdown.
For better error detection enable CONFIG_STACKTRACE.
+ See KASAN_SANITIZE_ALL for selectively compiling files and directories
+ with this compiler feature enabled.
Currently CONFIG_KASAN doesn't work with CONFIG_DEBUG_SLAB
(the resulting kernel does not boot).
@@ -45,6 +47,22 @@ config KASAN_INLINE
endchoice
+config KASAN_SANITIZE_ALL
+ bool "KASan: Enable Instrumentation for entire kernel"
+ depends on KASAN
+ default y
+ help
+ Enable compilation with $(CFLAGS_KASAN) by default.
+ KASAN_SANITIZE := n - exclude all files in a directory
+ KASAN_SANITIZE_file_name.o := n - exclude a single file
+ Setting KASAN_SANITIZE_ALL to 'n' allows enabling kasan in
+ only certain files or directories.
+ KASAN_SANITIZE := y - include all files in a directory
+ KASAN_SANITIZE_file_name.o := y - include single file
+
+ KASAN_SANITIZE does not affect subdirectories.
+ KASAN_SANITIZE_file_name.o has priority over KASAN_SANITIZE.
+
config TEST_KASAN
tristate "Module for testing kasan for bug detection"
depends on m && KASAN