Re: [PATCH] dump_stack on panic

From: Steven Rostedt
Date: Tue Oct 30 2007 - 20:31:01 EST


--
On Wed, 31 Oct 2007, Andi Kleen wrote:

> Steven Rostedt <rostedt@xxxxxxxxxxx> writes:
>
> > Is there any reason why we don't do a dump_stack on panic?
>
> One (mostly psychological, but still serious) problem is that stack
> dumps make panics always look like kernel bugs. But there are panics
> which are definitely not kernel bugs: like the popular cannot mount
> root or machine checks or a couple of others.

Good point.

>
> We do not want users to send all these panics to linux-kernel
> and they would if they look too much like kernel bugs.
>
> I think it's in principle a good idea, but only if you
> distingush the cases which are not kernel bugs.
> e.g. use a different panic() call for them that does not dump.
>

Do you think adding a panic_nodump() call would be fine for those few
locations that is obviously a user/machine bug. This way we could make a
wrapper for panic. Change panic to have a dump parameter.

e.g.

void __panic(int dump, const char * fmt, ...);

#define panic(x...) __panic(1, x)
#define panic_nodump(x...) __panic(0, x)

hmm, that will cause the print format to need to be changed, and if
someone screws up their formanting, the offset of parameters will be off.

Perhaps stripping most of the panic code into separate static functions,
and having two normal functions panic and panic_nodump might be better.

Thoughts?

-- Steve

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