History

panic: call panic handlers before kmsg_dump

Since the panic handlers may produce additional information (via printk) for the kernel log, it should be reported as part of the panic output saved by kmsg_dump(). Without this re-ordering, nothing that adds information to a panic will show up in pstore's view when kmsg_dump runs, and is therefore not visible to crash reporting tools that examine pstore output.

Kees Cook committed 13 years ago

Commit 67237341 parent 63259321 file · +6 −2Browse files

Unified · Split

kernel/panic.c+6−2
@@ -123,10 +123,14 @@ void panic(const char *fmt, ...) · 122 unmodified lines
123 */123 */
124 smp_send_stop();124 smp_send_stop();
125 125
126 kmsg_dump(KMSG_DUMP_PANIC);126 /*
127 127 * Run any panic handlers, including those that might need to
128 * add information to the kmsg dump output.
129 */
128 atomic_notifier_call_chain(&panic_notifier_list, 0, buf);130 atomic_notifier_call_chain(&panic_notifier_list, 0, buf);
129 131
132 kmsg_dump(KMSG_DUMP_PANIC);
133
130 bust_spinlocks(0);134 bust_spinlocks(0);
131 135
132 if (!panic_blink)136 if (!panic_blink)