Re: [CHECKER] large stack variables (>=1K) in 2.4.4 and 2.4.4-ac8

Keith Owens (kaos@ocs.com.au)
Fri, 25 May 2001 15:20:20 +1000


On Fri, 25 May 2001 01:33:03 +0200,
Andi Kleen <ak@suse.de> wrote:
>On Thu, May 24, 2001 at 05:08:40PM -0600, Andreas Dilger wrote:
>> I'm curious about this stack checker. Does it check for a single
>> stack allocation >= 1024 bytes, or does it also check for several
>> individual, smaller allocations which total >= 1024 bytes inside
>> a single function? That would be equally useful.
>
>At one time someone had a script to grep objdump -S vmlinux for the
>stack allocations generated by gcc and check them.

ftp://ftp.ocs.com.au/pub/kernel.stack.gz. ix86 specific, probably gcc
specific and it only picks up code that you compile. The Stanford
checker is much better.

>> On a side note, does anyone know if the kernel does checking if the
>> stack overflowed at any time?
>
>You normally get a silent hang or worse a stack fault exception
>(which linux/x86 without kdb cannot recover from) which gives you instant
>reboot.

You cannot recover from a kernel stack overflow even with kdb. The
exception handler and kdb use the stack that just overflowed.

-
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/