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