Messages in this thread | | | Subject | Re: [PATCH v3 1/3] init/main.c: Give init_task a canary | From | Michael Ellerman <> | Date | Fri, 12 Sep 2014 17:28:56 +1000 |
| |
On Thu, 2014-09-11 at 16:41 +0100, Aaron Tomlin wrote: > Tasks get their end of stack set to STACK_END_MAGIC with the > aim to catch stack overruns. Currently this feature does not > apply to init_task. This patch removes this restriction. > > diff --git a/arch/powerpc/mm/fault.c b/arch/powerpc/mm/fault.c > index 51ab9e7..35d0760c 100644 > --- a/arch/powerpc/mm/fault.c > +++ b/arch/powerpc/mm/fault.c > @@ -30,7 +30,6 @@ > #include <linux/kprobes.h> > #include <linux/kdebug.h> > #include <linux/perf_event.h> > -#include <linux/magic.h> > #include <linux/ratelimit.h> > #include <linux/context_tracking.h> > > @@ -538,7 +537,7 @@ void bad_page_fault(struct pt_regs *regs, unsigned long address, int sig) > regs->nip); > > stackend = end_of_stack(current); > - if (current != &init_task && *stackend != STACK_END_MAGIC) > + if (*stackend != STACK_END_MAGIC) > printk(KERN_ALERT "Thread overran stack, or stack corrupted\n");
This part looks fine.
Acked-by: Michael Ellerman <mpe@ellerman.id.au>
cheers
| |