Commit 77fcc347 authored by Kees Cook's avatar Kees Cook
Browse files

ubsan: Disable signed integer overflow sanitizer on GCC < 8



For opting functions out of sanitizer coverage, the "no_sanitize"
attribute is used, but in GCC this wasn't introduced until GCC 8.
Disable the sanitizer unless we're not using GCC, or it is GCC
version 8 or higher.

Reported-by: default avatarkernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202403110643.27JXEVCI-lkp@intel.com/


Reviewed-by: default avatarMarco Elver <elver@google.com>
Signed-off-by: default avatarKees Cook <keescook@chromium.org>
parent 0a7b0ace
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -119,6 +119,8 @@ config UBSAN_SIGNED_WRAP
	bool "Perform checking for signed arithmetic wrap-around"
	default UBSAN
	depends on !COMPILE_TEST
	# The no_sanitize attribute was introduced in GCC with version 8.
	depends on !CC_IS_GCC || GCC_VERSION >= 80000
	depends on $(cc-option,-fsanitize=signed-integer-overflow)
	help
	  This option enables -fsanitize=signed-integer-overflow which checks