Messages in this thread | | | Date | Thu, 31 May 2018 16:05:24 +0200 | From | Petr Mladek <> | Subject | Re: [PATCH] printk: drop in_nmi check from printk_safe_flush_on_panic() |
| |
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 <sergey.senozhatsky@gmail.com>
I have pushed this into printk.git, branch for-4.18.
Best Regards, Petr
| |