On Tue, Jul 19, 2011 at 02:54:11PM -0400, Don Zickus wrote: > On Tue, Jul 19, 2011 at 02:48:22PM -0400, Seiji Aguchi wrote: > > >How is this safe? What happens if there's a pstore access in process > > >when you hit this codepath? > > > > This will never happen because pstore_kmsg_dump_in_interrupt() is called after machine_crash_shutdown(). > > > > Panicked cpu sends NMI to all other cpus in machine_crash_shutdown() and they stop. > > > > > > @@ -1081,6 +1083,7 @@ void crash_kexec(struct pt_regs *regs) > > crash_setup_regs(&fixed_regs, regs); > > crash_save_vmcoreinfo(); > > machine_crash_shutdown(&fixed_regs); > > + pstore_kmsg_dump_in_interrupt(KMSG_DUMP_KEXEC); > > > > Seiji > > Another interesting question is do we need to log anything in the kdump > path? Isn't kdump generating the same info? What added value do we get > over kdump? I had the same question. The argument is that kdump can fail and they can not afford to not capture any info at all. So before kdump executes they want to save some state to NVRAM. I am wondering that saving this info to NVRAM, can it be done early in second kernel? I guess we are not supposed to take any EFI services in second kernel so it might not be possible. Thanks Vivek