|
@@ -38,6 +38,9 @@ static inline void stack_overflow_check(struct pt_regs *regs)
|
|
#ifdef CONFIG_DEBUG_STACKOVERFLOW
|
|
#ifdef CONFIG_DEBUG_STACKOVERFLOW
|
|
u64 curbase = (u64)task_stack_page(current);
|
|
u64 curbase = (u64)task_stack_page(current);
|
|
|
|
|
|
|
|
+ if (user_mode_vm(regs))
|
|
|
|
+ return;
|
|
|
|
+
|
|
WARN_ONCE(regs->sp >= curbase &&
|
|
WARN_ONCE(regs->sp >= curbase &&
|
|
regs->sp <= curbase + THREAD_SIZE &&
|
|
regs->sp <= curbase + THREAD_SIZE &&
|
|
regs->sp < curbase + sizeof(struct thread_info) +
|
|
regs->sp < curbase + sizeof(struct thread_info) +
|