linux/lib/Kconfig.ubsan
<<
>>
Prefs
   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
  17        # We build with -Wno-maybe-uninitilzed, but we still want to
  18        # use -Wmaybe-uninitilized in allmodconfig builds.
  19        # So dependsy bellow used to disable this option in allmodconfig
  20        depends on !COMPILE_TEST
  21        default y
  22        help
  23          This option activates instrumentation for the entire kernel.
  24          If you don't enable this option, you have to explicitly specify
  25          UBSAN_SANITIZE := y for the files/directories you want to check for UB.
  26          Enabling this option will get kernel image size increased
  27          significantly.
  28
  29config UBSAN_ALIGNMENT
  30        bool "Enable checking of pointers alignment"
  31        depends on UBSAN
  32        default y if !HAVE_EFFICIENT_UNALIGNED_ACCESS
  33        help
  34          This option enables detection of unaligned memory accesses.
  35          Enabling this option on architectures that support unaligned
  36          accesses may produce a lot of false positives.
  37