]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blame - lib/Kconfig.ubsan
Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
[mirror_ubuntu-artful-kernel.git] / lib / Kconfig.ubsan
CommitLineData
c6d30853
AR
1config ARCH_HAS_UBSAN_SANITIZE_ALL
2 bool
3
725c4d22
CB
4config ARCH_WANTS_UBSAN_NO_NULL
5 def_bool n
6
c6d30853
AR
7config UBSAN
8 bool "Undefined behaviour sanity checker"
9 help
10 This option enables undefined behaviour sanity checker
11 Compile-time instrumentation is used to detect various undefined
12 behaviours in runtime. Various types of checks may be enabled
04625547
AP
13 via boot parameter ubsan_handle
14 (see: Documentation/dev-tools/ubsan.rst).
c6d30853
AR
15
16config UBSAN_SANITIZE_ALL
17 bool "Enable instrumentation for the entire kernel"
18 depends on UBSAN
19 depends on ARCH_HAS_UBSAN_SANITIZE_ALL
dde5cf39
AR
20
21 # We build with -Wno-maybe-uninitilzed, but we still want to
22 # use -Wmaybe-uninitilized in allmodconfig builds.
23 # So dependsy bellow used to disable this option in allmodconfig
24 depends on !COMPILE_TEST
c6d30853
AR
25 default y
26 help
27 This option activates instrumentation for the entire kernel.
28 If you don't enable this option, you have to explicitly specify
29 UBSAN_SANITIZE := y for the files/directories you want to check for UB.
7707535a
YS
30 Enabling this option will get kernel image size increased
31 significantly.
c6d30853
AR
32
33config UBSAN_ALIGNMENT
34 bool "Enable checking of pointers alignment"
35 depends on UBSAN
36 default y if !HAVE_EFFICIENT_UNALIGNED_ACCESS
37 help
38 This option enables detection of unaligned memory accesses.
7707535a 39 Enabling this option on architectures that support unaligned
c6d30853 40 accesses may produce a lot of false positives.
725c4d22
CB
41
42config UBSAN_NULL
43 bool "Enable checking of null pointers"
44 depends on UBSAN
45 default y if !ARCH_WANTS_UBSAN_NO_NULL
46 help
47 This option enables detection of memory accesses via a
48 null pointer.