diff -drupN a/arch/arm/kernel/traps.c b/arch/arm/kernel/traps.c --- a/arch/arm/kernel/traps.c 2018-08-06 17:23:04.000000000 +0300 +++ b/arch/arm/kernel/traps.c 2022-06-12 05:28:14.000000000 +0300 @@ -95,7 +95,7 @@ void dump_backtrace_stm(u32 *stack, u32 printk("%s\n", str); } -#ifndef CONFIG_ARM_UNWIND +#if !defined(CONFIG_ARM_UNWIND) /* * Stack pointers should always be within the kernels view of * physical memory. If it is not there, then we can't dump @@ -103,9 +103,11 @@ void dump_backtrace_stm(u32 *stack, u32 */ static int verify_stack(unsigned long sp) { +#if !defined(CONFIG_VMAP_STACK) if (sp < PAGE_OFFSET || (sp > (unsigned long)high_memory && high_memory != NULL)) return -EFAULT; +#endif return 0; }