powerpc/crash: Use NMI context for printk when starting to crash
Currently, if printk lock (logbuf_lock) is held by other thread during crash, there is a chance of deadlocking the crash on next printk, and blocking a possibly desired kdump. At the start of default_machine_crash_shutdown, make printk enter NMI context, as it will use per-cpu buffers to store the message, and avoid locking logbuf_lock. Suggested-by: Michael Ellerman <mpe@ellerman.id.au> Signed-off-by: Leonardo Bras <leobras.c@gmail.com> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Link: https://lore.kernel.org/r/20200512214533.93878-1-leobras.c@gmail.com
This commit is contained in:
Родитель
b6eca183e2
Коммит
af2876b501
|
@ -311,6 +311,9 @@ void default_machine_crash_shutdown(struct pt_regs *regs)
|
|||
unsigned int i;
|
||||
int (*old_handler)(struct pt_regs *regs);
|
||||
|
||||
/* Avoid hardlocking with irresponsive CPU holding logbuf_lock */
|
||||
printk_nmi_enter();
|
||||
|
||||
/*
|
||||
* This function is only called after the system
|
||||
* has panicked or is otherwise in a critical state.
|
||||
|
|
Загрузка…
Ссылка в новой задаче