Messages in this thread | | | From | Seiji Aguchi <> | Date | Tue, 19 Jul 2011 14:48:22 -0400 | Subject | RE: [RFC][PATCH -mmotm 1/4] Add static function calls of pstore to kexec path |
| |
>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
>-----Original Message----- >From: Matthew Garrett [mailto:mjg@redhat.com] >Sent: Tuesday, July 19, 2011 2:35 PM >To: Seiji Aguchi >Cc: kexec@lists.infradead.org; linux-kernel@vger.kernel.org; linux-mtd@lists.infradead.org; Eric W. Biederman; Vivek >Goyal; KOSAKI Motohiro; Americo Wang; tony.luck@intel.com; Andrew Morton; Jarod Wilson; hpa@zytor.com; dzickus@redhat.com; >dle-develop@lists.sourceforge.net; Satoru Moriya >Subject: Re: [RFC][PATCH -mmotm 1/4] Add static function calls of pstore to kexec path > >On Tue, Jul 19, 2011 at 02:24:27PM -0400, Seiji Aguchi wrote: > >> - mutex_lock(&psinfo->buf_mutex); >> + switch (reason) { >> + case KMSG_DUMP_KEXEC: >> + /* Skip if there is no driver or there is a driver calling >> + pstore_register() */ >> + if (!psinfo || !spin_trylock(&pstore_lock)) >> + return; >> + break; >> + default: >> + mutex_lock(&psinfo->buf_mutex); > >How is this safe? What happens if there's a pstore access in process >when you hit this codepath? > >-- >Matthew Garrett | mjg59@srcf.ucam.org
| |