Re: [PATCH 5/5] stack overflow safe kdump (2.6.15-i386) - privatenmi stack

From: Fernando Luis Vazquez Cao
Date: Wed Jan 25 2006 - 02:21:40 EST


On Fri, 2006-01-20 at 08:19 -0500, Vivek Goyal wrote:
> On Thu, Jan 19, 2006 at 01:43:14PM +0900, Fernando Luis Vazquez Cao wrote:
> > On Tue, 2006-01-17 at 20:51 -0500, Vivek Goyal wrote:
> > >
> > > Does not work for 8K stacks. Also we are switching the stack all the
> > > time for NMI. I am not sure if that is really required (performance?).
> > Yes, it does not work for 8K stacks, but this is something premeditated.
> > Since private stacks for interrupts are only used when 4KSTACKS
> > is enabled I felt that to be consistent it should be the same in
> > the NMI's case. Anyway if it is deemed correct (I agree it is desirable)
> > I could implement it.
> >
> > Regarding the impact in performance, note that when we use 4K stacks we
> > are switching stacks _every_ time an interrupt occurs. I do not see why
> > we should not do the same for NMIs. Specially since the cost of
> > switching stacks is relatively small when compared to the cost of
> > executing the NMI watchdog's handler.
> >
> > > Can't it be made to work both for 4K and 8K stack. And switch to reserved
> > > stack on NMI, only if crash has happened.
> > Yes, it could be done, but I think it is safer to use a private stack
> > all the time, so that the NMI handler does not contribute to an eventual
> > stack overflow. I would like to avoid the case of the the stack
> > overflowing inside the NMI handler.
>
> Ok. Then we are looking at an entirely different problem and that is avoid
> stack overflows for NMI for 4K stacks in general and not necessarily a
> crash dump specific code hardening.
Exactly.

Fernando

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/