summary refs log tree commit diff
path: root/lib/Kconfig.ubsan
diff options
context:
space:
mode:
authorJinbum Park <jinb.park7@gmail.com>2018-04-10 16:32:58 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2018-04-11 10:28:35 -0700
commit854686f4edf483db1e0d26d972bdb8fb65c8bfaa (patch)
treec0e498e408f0c56201b03881a1ae92ca0ec9518d /lib/Kconfig.ubsan
parentf6f66c1bf53079ce1f0789c8b482fba35b81617d (diff)
downloadlinux-854686f4edf483db1e0d26d972bdb8fb65c8bfaa.tar.gz
lib: add testing module for UBSAN
This is a test module for UBSAN.  It triggers all undefined behaviors
that linux supports now, and detect them.

All test-cases have passed by compiling with gcc-5.5.0.

If use gcc-4.9.x, misaligned, out-of-bounds, object-size-mismatch will not
be detected.  Because gcc-4.9.x doesn't support them.

Link: http://lkml.kernel.org/r/20180309102247.GA2944@pjb1027-Latitude-E5410
Signed-off-by: Jinbum Park <jinb.park7@gmail.com>
Cc: Andrey Ryabinin <aryabinin@virtuozzo.com>
Cc: Dmitry Vyukov <dvyukov@google.com>
Cc: Kees Cook <keescook@chromium.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'lib/Kconfig.ubsan')
-rw-r--r--lib/Kconfig.ubsan7
1 files changed, 7 insertions, 0 deletions
diff --git a/lib/Kconfig.ubsan b/lib/Kconfig.ubsan
index a669c193b878..19d42ea75ec2 100644
--- a/lib/Kconfig.ubsan
+++ b/lib/Kconfig.ubsan
@@ -46,3 +46,10 @@ config UBSAN_NULL
 	help
 	  This option enables detection of memory accesses via a
 	  null pointer.
+
+config TEST_UBSAN
+	tristate "Module for testing for undefined behavior detection"
+	depends on m && UBSAN
+	help
+	  This is a test module for UBSAN.
+	  It triggers various undefined behavior, and detect it.