lkml.org 
[lkml]   [2005]   [Nov]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [Fastboot] Re: [PATCH & RFC] kdump and stack overflows
On Mon, Nov 28, 2005 at 11:29:29AM -0700, Eric W. Biederman wrote:
> Fernando Luis Vazquez Cao <fernando@intellilink.co.jp> writes:
>
> > On Mon, 2005-11-28 at 06:39 -0700, Eric W. Biederman wrote:
> >> Fernando Luis Vazquez Cao <fernando@intellilink.co.jp> writes:
>
> > Regarding the stack overflow audit of the nmi path, we have the problem
> > that both nmi_enter and nmi_exit in do_nmi (see code below) make heavy
> > use of "current" indirectly (specially through the kernel preemption
> > code).
>
> Ok. I wonder if it would be saner to simply replace the nmi trap
> handler on the crash dump path?
>

Sounds interesting.

> >> I believe we have a separate interrupt stack that
> >> should help but..
> > Yes, when using 4K stacks we have a separate interrupt stack that should
> > help, but I am afraid that crash dumping is about being paranoid.
>
> Oh I agree. If we had a private 4K stack for the nmi handler we
> would not need to worry about overflow in that case.

Having private 4K stack makes sense as crash_nmi_callback() itself
requires quite some space on stack. If one has enabled CONFIG_4KSTACKS,
then we use separate interrupt stack and we are probably safe from stack
overflows but otherwise we need it.

> (baring
> nmi happening during nmis) Hmm. Is there anything to keep
> us doing something bad in that case?
>
> I guess as long as we don't clear the high bit of port 0x70 we
> should be reasonably safe from the nmi firing multiple times.

Are you referring to port 0x23 for IMCR register.

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

\
 
 \ /
  Last update: 2005-11-29 14:30    [W:0.069 / U:0.652 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site