Commit 6723734cdff15211bb78aeea76ca847374bd93ae
Committed by
Linus Torvalds
1 parent
6325932666
Exists in
master
and in
20 other branches
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. Signed-off-by: Kees Cook <keescook@chromium.org> Cc: Anton Vorontsov <anton@enomsg.org> Cc: Colin Cross <ccross@android.com> Acked-by: Tony Luck <tony.luck@intel.com> Cc: Stephen Boyd <sboyd@codeaurora.org> Cc: Vikram Mulukutla <markivx@codeaurora.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Rusty Russell <rusty@rustcorp.com.au> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Showing 1 changed file with 6 additions and 2 deletions Side-by-side Diff
kernel/panic.c
... | ... | @@ -123,9 +123,13 @@ |
123 | 123 | */ |
124 | 124 | smp_send_stop(); |
125 | 125 | |
126 | - kmsg_dump(KMSG_DUMP_PANIC); | |
127 | - | |
126 | + /* | |
127 | + * Run any panic handlers, including those that might need to | |
128 | + * add information to the kmsg dump output. | |
129 | + */ | |
128 | 130 | atomic_notifier_call_chain(&panic_notifier_list, 0, buf); |
131 | + | |
132 | + kmsg_dump(KMSG_DUMP_PANIC); | |
129 | 133 | |
130 | 134 | bust_spinlocks(0); |
131 | 135 |