Merge branch 'akpm' (patches from Andrew)
[linux-2.6-block.git] / kernel / panic.c
index 535c96510a448f351dc89f3a36c01b2372f0decf..8aa74497cc5a888ef610dfce06b8e0018634a7e4 100644 (file)
@@ -160,8 +160,10 @@ void panic(const char *fmt, ...)
         *
         * Bypass the panic_cpu check and call __crash_kexec directly.
         */
-       if (!crash_kexec_post_notifiers)
+       if (!crash_kexec_post_notifiers) {
+               printk_nmi_flush_on_panic();
                __crash_kexec(NULL);
+       }
 
        /*
         * Note smp_send_stop is the usual smp shutdown function, which
@@ -176,6 +178,8 @@ void panic(const char *fmt, ...)
         */
        atomic_notifier_call_chain(&panic_notifier_list, 0, buf);
 
+       /* Call flush even twice. It tries harder with a single online CPU */
+       printk_nmi_flush_on_panic();
        kmsg_dump(KMSG_DUMP_PANIC);
 
        /*