UBSAN: run-time undefined behavior sanity checker
[linux-2.6-block.git] / lib / Kconfig.ubsan
CommitLineData
c6d30853
AR
1config ARCH_HAS_UBSAN_SANITIZE_ALL
2 bool
3
4config UBSAN
5 bool "Undefined behaviour sanity checker"
6 help
7 This option enables undefined behaviour sanity checker
8 Compile-time instrumentation is used to detect various undefined
9 behaviours in runtime. Various types of checks may be enabled
10 via boot parameter ubsan_handle (see: Documentation/ubsan.txt).
11
12config UBSAN_SANITIZE_ALL
13 bool "Enable instrumentation for the entire kernel"
14 depends on UBSAN
15 depends on ARCH_HAS_UBSAN_SANITIZE_ALL
16 default y
17 help
18 This option activates instrumentation for the entire kernel.
19 If you don't enable this option, you have to explicitly specify
20 UBSAN_SANITIZE := y for the files/directories you want to check for UB.
21
22config UBSAN_ALIGNMENT
23 bool "Enable checking of pointers alignment"
24 depends on UBSAN
25 default y if !HAVE_EFFICIENT_UNALIGNED_ACCESS
26 help
27 This option enables detection of unaligned memory accesses.
28 Enabling this option on architectures that support unalligned
29 accesses may produce a lot of false positives.