[PATCH] arm64: fix add kasan bug

From: zhongjiang
Date: Thu Dec 31 2015 - 05:17:23 EST


From: zhong jiang <zhongjiang@xxxxxxxxxx>

In general, each process have 16kb stack space to use, but
stack need extra space to store red_zone when kasan enable.
the patch fix above question.

Signed-off-by: zhong jiang <zhongjiang@xxxxxxxxxx>
---
arch/arm64/include/asm/thread_info.h | 15 +++++++++++++--
1 file changed, 13 insertions(+), 2 deletions(-)

diff --git a/arch/arm64/include/asm/thread_info.h b/arch/arm64/include/asm/thread_info.h
index 90c7ff2..45b5a7e 100644
--- a/arch/arm64/include/asm/thread_info.h
+++ b/arch/arm64/include/asm/thread_info.h
@@ -23,13 +23,24 @@

#include <linux/compiler.h>

+#ifdef CONFIG_KASAN
+#define KASAN_STACK_ORDER 1
+#else
+#define KASAN_STACK_ORDER 0
+#endif
+
#ifdef CONFIG_ARM64_4K_PAGES
-#define THREAD_SIZE_ORDER 2
+#define THREAD_SIZE_ORDER (2 + KASAN_STACK_ORDER)
#elif defined(CONFIG_ARM64_16K_PAGES)
-#define THREAD_SIZE_ORDER 0
+#define THREAD_SIZE_ORDER (0 + KASAN_STACK_ORDER)
#endif

+#ifdef CONFIG_KASAN
+#define THREAD_SIZE 32768
+#else
#define THREAD_SIZE 16384
+#endif
+
#define THREAD_START_SP (THREAD_SIZE - 16)

#ifndef __ASSEMBLY__
--
2.0.0

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/