From 19733fe8721b8d91b799c91082ebb9c139ca6710 Mon Sep 17 00:00:00 2001 From: Vasily Gorbik Date: Fri, 12 Jan 2018 12:46:00 +0100 Subject: s390/head: avoid doubling early boot stack size under KASAN Early boot stack uses predefined 4 pages of memory 0x8000-0xC000. This stack is used to run not instumented decompressor/facilities verification C code. It doesn't make sense to double its size when the kernel is built with KASAN support. BOOT_STACK_ORDER is introduced to avoid that. Signed-off-by: Vasily Gorbik Signed-off-by: Martin Schwidefsky --- arch/s390/boot/head.S | 2 +- arch/s390/include/asm/thread_info.h | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/arch/s390/boot/head.S b/arch/s390/boot/head.S index e209cfe69bb9..ce2cbbc41742 100644 --- a/arch/s390/boot/head.S +++ b/arch/s390/boot/head.S @@ -315,7 +315,7 @@ ENTRY(startup_kdump) brasl %r14,startup_kernel .Lstack: - .long 0x8000 + THREAD_SIZE - STACK_FRAME_OVERHEAD + .long 0x8000 + (1<<(PAGE_SHIFT+BOOT_STACK_ORDER)) - STACK_FRAME_OVERHEAD .align 8 6: .long 0x7fffffff,0xffffffff diff --git a/arch/s390/include/asm/thread_info.h b/arch/s390/include/asm/thread_info.h index 79b40600f523..27248f42a03c 100644 --- a/arch/s390/include/asm/thread_info.h +++ b/arch/s390/include/asm/thread_info.h @@ -18,6 +18,7 @@ #else #define THREAD_SIZE_ORDER 2 #endif +#define BOOT_STACK_ORDER 2 #define THREAD_SIZE (PAGE_SIZE << THREAD_SIZE_ORDER) #ifndef __ASSEMBLY__ -- cgit v1.2.3