summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorUros Bizjak <ubizjak@gmail.com>2024-03-20 13:45:49 +0100
committerIngo Molnar <mingo@kernel.org>2024-03-20 14:22:56 +0100
commitf61f02d1ff788ae5ad485ef8edd88d9c93557994 (patch)
tree0618bc674abad08b78030d42ee7a1814e42aa93f
parentce99b9c8daff3352a2ae0c72acf44e0663095fea (diff)
downloadlinux-stable-f61f02d1ff788ae5ad485ef8edd88d9c93557994.tar.gz
linux-stable-f61f02d1ff788ae5ad485ef8edd88d9c93557994.tar.bz2
linux-stable-f61f02d1ff788ae5ad485ef8edd88d9c93557994.zip
x86/percpu: Re-enable named address spaces with KASAN for GCC 13.3+
Commit: 68fb3ca0e408 ("x86/percpu: Disable named address spaces for KASAN") ... disabled support for named address spaces with KASAN due to the incompatibility issue between named AS and KASAN. GCC 13.3 has fixed this issue (GCC PR sanitizer/111736) so the support for named address spaces can be re-enabled with KASAN for GCC compiler version >= 13.3. Note that the patch considers GCC 14 to be fixed - if somebody is using snapshots of the GCC 14 before the fix, they should upgrade. Signed-off-by: Uros Bizjak <ubizjak@gmail.com> Signed-off-by: Ingo Molnar <mingo@kernel.org> Cc: Andy Lutomirski <luto@kernel.org> Cc: Josh Poimboeuf <jpoimboe@redhat.com> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Josh Poimboeuf <jpoimboe@redhat.com> Cc: Ard Biesheuvel <ardb@kernel.org> Cc: Jakub Jelinek <jakub@redhat.com> Cc: Nick Desaulniers <ndesaulniers@google.com> Cc: Sean Christopherson <seanjc@google.com> Link: https://lore.kernel.org/r/20240320124603.566923-1-ubizjak@gmail.com
-rw-r--r--arch/x86/Kconfig9
1 files changed, 6 insertions, 3 deletions
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index 7aed87cbf386..09455d93b947 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -2435,14 +2435,17 @@ endmenu
config CC_HAS_NAMED_AS
def_bool CC_IS_GCC && GCC_VERSION >= 120100
+config CC_HAS_NAMED_AS_FIXED_ASAN
+ def_bool CC_IS_GCC && GCC_VERSION >= 130300
+
config USE_X86_SEG_SUPPORT
def_bool y
depends on CC_HAS_NAMED_AS
#
- # -fsanitize=kernel-address (KASAN) is at the moment incompatible
- # with named address spaces - see GCC PR sanitizer/111736.
+ # -fsanitize=kernel-address (KASAN) is incompatible with named
+ # address spaces with GCC < 13.3 - see GCC PR sanitizer/111736.
#
- depends on !KASAN
+ depends on !KASAN || CC_HAS_NAMED_AS_FIXED_ASAN
config CC_HAS_SLS
def_bool $(cc-option,-mharden-sls=all)