diff options
| -rw-r--r-- | arch/x86/kernel/dumpstack.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/x86/kernel/dumpstack.c b/arch/x86/kernel/dumpstack.c index 9c8652974f8e..1596e6bfea6f 100644 --- a/arch/x86/kernel/dumpstack.c +++ b/arch/x86/kernel/dumpstack.c | |||
| @@ -17,6 +17,7 @@ | |||
| 17 | #include <linux/bug.h> | 17 | #include <linux/bug.h> |
| 18 | #include <linux/nmi.h> | 18 | #include <linux/nmi.h> |
| 19 | #include <linux/sysfs.h> | 19 | #include <linux/sysfs.h> |
| 20 | #include <linux/kasan.h> | ||
| 20 | 21 | ||
| 21 | #include <asm/cpu_entry_area.h> | 22 | #include <asm/cpu_entry_area.h> |
| 22 | #include <asm/stacktrace.h> | 23 | #include <asm/stacktrace.h> |
| @@ -346,7 +347,10 @@ void oops_end(unsigned long flags, struct pt_regs *regs, int signr) | |||
| 346 | * We're not going to return, but we might be on an IST stack or | 347 | * We're not going to return, but we might be on an IST stack or |
| 347 | * have very little stack space left. Rewind the stack and kill | 348 | * have very little stack space left. Rewind the stack and kill |
| 348 | * the task. | 349 | * the task. |
| 350 | * Before we rewind the stack, we have to tell KASAN that we're going to | ||
| 351 | * reuse the task stack and that existing poisons are invalid. | ||
| 349 | */ | 352 | */ |
| 353 | kasan_unpoison_task_stack(current); | ||
| 350 | rewind_stack_do_exit(signr); | 354 | rewind_stack_do_exit(signr); |
| 351 | } | 355 | } |
| 352 | NOKPROBE_SYMBOL(oops_end); | 356 | NOKPROBE_SYMBOL(oops_end); |
