diff options
author | Ingo Molnar <mingo@elte.hu> | 2008-02-14 03:07:01 -0500 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2008-05-26 10:15:32 -0400 |
commit | 5cb273013e182a35e7db614d3e20a144cba71e53 (patch) | |
tree | f027f389e3d9d2ab9750fdc81399f6c5df385fb2 /kernel | |
parent | 517a92c4e19fcea815332d3155e9fb7723251274 (diff) |
panic: print out stacktrace if DEBUG_BUGVERBOSE
if CONFIG_DEBUG_BUGVERBOSE is set then the user most definitely wanted
to see as much information about kernel crashes as possible - so give
them at least a stack dump.
this is particularly useful for stackprotector related panics, where
the stacktrace can give us the exact location of the (attempted)
attack.
Pointed out by pageexec@freemail.hu in the stackprotector breakage
threads.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'kernel')
-rw-r--r-- | kernel/panic.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/kernel/panic.c b/kernel/panic.c index f236001cc4db..17aad578a2f2 100644 --- a/kernel/panic.c +++ b/kernel/panic.c | |||
@@ -80,6 +80,9 @@ NORET_TYPE void panic(const char * fmt, ...) | |||
80 | vsnprintf(buf, sizeof(buf), fmt, args); | 80 | vsnprintf(buf, sizeof(buf), fmt, args); |
81 | va_end(args); | 81 | va_end(args); |
82 | printk(KERN_EMERG "Kernel panic - not syncing: %s\n",buf); | 82 | printk(KERN_EMERG "Kernel panic - not syncing: %s\n",buf); |
83 | #ifdef CONFIG_DEBUG_BUGVERBOSE | ||
84 | dump_stack(); | ||
85 | #endif | ||
83 | bust_spinlocks(0); | 86 | bust_spinlocks(0); |
84 | 87 | ||
85 | /* | 88 | /* |