Thread (101 messages) 101 messages, 6 authors, 2020-09-18

Re: [PATCH 19/35] kasan: don't allow SW_TAGS with ARM64_MTE

From: Andrey Konovalov <hidden>
Date: 2020-08-27 12:22:58
Also in: linux-mm, lkml

On Thu, Aug 27, 2020 at 11:52 AM Vincenzo Frascino
[off-list ref] wrote:
Hi Andrey,

On 8/27/20 9:04 AM, Catalin Marinas wrote:
quoted
On Fri, Aug 14, 2020 at 07:27:01PM +0200, Andrey Konovalov wrote:
quoted
Software tag-based KASAN provides its own tag checking machinery that
can conflict with MTE. Don't allow enabling software tag-based KASAN
when MTE is enabled.

Signed-off-by: Andrey Konovalov <redacted>
---
 lib/Kconfig.kasan | 1 +
 1 file changed, 1 insertion(+)
diff --git a/lib/Kconfig.kasan b/lib/Kconfig.kasan
index b4cf6c519d71..e500c18cbe79 100644
--- a/lib/Kconfig.kasan
+++ b/lib/Kconfig.kasan
@@ -69,6 +69,7 @@ config KASAN_GENERIC
 config KASAN_SW_TAGS
     bool "Software tag-based mode"
     depends on HAVE_ARCH_KASAN_SW_TAGS && CC_HAS_KASAN_SW_TAGS
+    depends on !ARM64_MTE
I think that's better as:
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index 10cf81d70657..736c32bd8905 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -131,7 +131,7 @@ config ARM64
      select HAVE_ARCH_JUMP_LABEL
      select HAVE_ARCH_JUMP_LABEL_RELATIVE
      select HAVE_ARCH_KASAN if !(ARM64_16K_PAGES && ARM64_VA_BITS_48)
-     select HAVE_ARCH_KASAN_SW_TAGS if HAVE_ARCH_KASAN
+     select HAVE_ARCH_KASAN_SW_TAGS if HAVE_ARCH_KASAN && !ARM64_MTE
      select HAVE_ARCH_KGDB
      select HAVE_ARCH_MMAP_RND_BITS
      select HAVE_ARCH_MMAP_RND_COMPAT_BITS if COMPAT
I agree with Catalin here, "select HAVE_ARCH_KASAN_SW_TAGS if HAVE_ARCH_KASAN &&
!ARM64_MTE" should be sufficient.
Sounds good, will do in v2, thanks!

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help