Messages in this thread | | | Date | Fri, 21 Aug 2009 11:13:31 -0700 (PDT) | From | Linus Torvalds <> | Subject | Re: [tip:tracing/urgent] tracing: Fix too large stack usage in do_one_initcall() |
| |
On Fri, 21 Aug 2009, Andrew Morton wrote: > > We seem to have overrun an 8k stack in > http://bugzilla.kernel.org/show_bug.cgi?id=14029
The thread "v2.6.31-rc6: BUG: unable to handle kernel NULL pointer dereference at 0000000000000008" also has at least one oops that has that "Thread overran stack, or stack corrupted" marker thing.
> Do we have a max-stack-depth tracer widget btw?
Enable FTRACE and then STACK_TRACER. Then just do
cat /sys/kernel/debug/tracing/stack_trace
and you'll get this.
But if by "widget" you meant something nice and automatic, then I don't think so.
> My main concern would be maintenance. Over time we'll chew more and > more stack space and eventually we'll get into trouble again. What > means do we have for holding the line at 8k, and even improving things?
That's why I think the async thing could fix this - if we _force_ async calls to be asynchronous, you won't have the deep callchains for all the device discovery thing.
Linus
| |