Skip to content

Commit cf20852

Browse files
committed
KMSAN: Restore dynamic check for '-fsanitize=kernel-memory'
Commit 5ff8c11 ("KMSAN: Remove tautological checks") changed CONFIG_HAVE_KMSAN_COMPILER from a dynamic check for '-fsanitize=kernel-memory' to just being true for CONFIG_CC_IS_CLANG. This missed the fact that not all architectures supported '-fsanitize=kernel-memory' at the same time. For example, SystemZ / s390 gained support for KMSAN in clang-18 [1], so builds with clang-15 through clang-17 can select KMSAN but they error with: clang-16: error: unsupported option '-fsanitize=kernel-memory' for target 's390x-unknown-linux-gnu' Restore the cc-option check for '-fsanitize=kernel-memory' to make sure the compiler target properly supports '-fsanitize=kernel-memory'. The check for '-msan-disable-checks=1' does not need to be restored because all supported clang versions for building the kernel support it. Fixes: 5ff8c11 ("KMSAN: Remove tautological checks") Link: llvm/llvm-project@a3e56a8 [1] Reported-by: kernel test robot <[email protected]> Closes: https://lore.kernel.org/r/[email protected]/ Acked-by: Nicolas Schier <[email protected]> Link: https://patch.msgid.link/[email protected] Signed-off-by: Nathan Chancellor <[email protected]>
1 parent d50f210 commit cf20852

1 file changed

Lines changed: 1 addition & 1 deletion

File tree

lib/Kconfig.kmsan

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ config HAVE_ARCH_KMSAN
33
bool
44

55
config HAVE_KMSAN_COMPILER
6-
def_bool CC_IS_CLANG
6+
def_bool $(cc-option,-fsanitize=kernel-memory)
77

88
config KMSAN
99
bool "KMSAN: detector of uninitialized values use"

0 commit comments

Comments
 (0)