diff options
author | John Ogness <john.ogness@linutronix.de> | 2024-08-20 09:29:51 +0300 |
---|---|---|
committer | Petr Mladek <pmladek@suse.com> | 2024-08-21 15:56:24 +0300 |
commit | d2e85ca7a736d2d889bac9aef6ede0a67f6870b2 (patch) | |
tree | 85a6039eb2208825135d0c50af27569b327676d6 /kernel/printk | |
parent | 8ba77712a7501ca941603d6d5ed650cd0d42cafb (diff) | |
download | linux-d2e85ca7a736d2d889bac9aef6ede0a67f6870b2.tar.xz |
printk: Flush nbcon consoles first on panic
In console_flush_on_panic(), flush the nbcon consoles before
flushing legacy consoles. The legacy write() callbacks are not
fully safe when oops_in_progress is set.
Signed-off-by: John Ogness <john.ogness@linutronix.de>
Reviewed-by: Petr Mladek <pmladek@suse.com>
Link: https://lore.kernel.org/r/20240820063001.36405-26-john.ogness@linutronix.de
Signed-off-by: Petr Mladek <pmladek@suse.com>
Diffstat (limited to 'kernel/printk')
-rw-r--r-- | kernel/printk/printk.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c index 7c9f8f6e1738..c6e633329e4d 100644 --- a/kernel/printk/printk.c +++ b/kernel/printk/printk.c @@ -3269,6 +3269,9 @@ void console_flush_on_panic(enum con_flush_mode mode) if (mode == CONSOLE_REPLAY_ALL) __console_rewind_all(); + if (!have_boot_console) + nbcon_atomic_flush_pending(); + console_flush_all(false, &next_seq, &handover); } |