config ARCH_HAS_UBSAN_SANITIZE_ALL
	bool

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/dev-tools/ubsan.rst).

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 TEST_UBSAN
	tristate "Module for testing for undefined behavior detection"
	depends on m && UBSAN
	help
	  This is a test module for UBSAN.
	  It triggers various undefined behavior, and detect it.
