On Wed 2018-05-30 16:03:50, Sergey Senozhatsky wrote: > Drop the in_nmi() check from printk_safe_flush_on_panic() > and attempt to re-init (IOW unlock) locked logbuf spinlock > from panic CPU regardless of its context. Otherwise, > theoretically, we can deadlock on logbuf trying to flush > per-CPU buffers: > a) Panic CPU is running in non-NMI context > b) Panic CPU sends out shutdown IPI via reboot vector > c) Panic CPU fails to stop all remote CPUs > d) Panic CPU sends out shutdown IPI via NMI vector > One of the CPUs that we bring down via NMI vector can hold > logbuf spin lock (theoretically). > > Signed-off-by: Sergey Senozhatsky <[email protected]>
I have pushed this into printk.git, branch for-4.18. Best Regards, Petr

