lib: add testing module for UBSAN
authorJinbum Park <jinb.park7@gmail.com>
Tue, 10 Apr 2018 23:32:58 +0000 (16:32 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Wed, 11 Apr 2018 17:28:35 +0000 (10:28 -0700)
commit854686f4edf483db1e0d26d972bdb8fb65c8bfaa
treec0e498e408f0c56201b03881a1ae92ca0ec9518d
parentf6f66c1bf53079ce1f0789c8b482fba35b81617d
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>
lib/Kconfig.ubsan
lib/Makefile
lib/test_ubsan.c [new file with mode: 0644]