>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:[email protected]]
>Sent: Tuesday, July 19, 2011 2:35 PM
>To: Seiji Aguchi
>Cc: [email protected]; [email protected];
>[email protected]; Eric W. Biederman; Vivek
>Goyal; KOSAKI Motohiro; Americo Wang; [email protected]; Andrew Morton;
>Jarod Wilson; [email protected]; [email protected];
>[email protected]; 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 | [email protected]
_______________________________________________
kexec mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/kexec