Messages in this thread | | | From | John Ogness <> | Subject | [PATCH printk v2 0/4] fix console flushing on panic | Date | Fri, 13 Oct 2023 22:49:36 +0206 |
| |
Hi,
While testing various panic scenarios using legacy consoles, I stumbled on a couple issues that cause the panic backtrace not to be printed:
1. In panic, an unfinalized record blocks printing of finalized records that may follow.
2. It is possible (and easy to reproduce) a scenario where the console on the panic CPU hands over to a waiter of a stopped CPU.
This series addresses these 2 issues while also performing some minor cleanups to remove open coded checks about the panic context.
Because of multiple refactoring done in recent history, it would be helpful to provide the LTS maintainers with the proper backported patches. I am happy to do this.
John Ogness
John Ogness (4): printk: For @suppress_panic_printk check other panic printk: Add this_cpu_in_panic() printk: Skip unfinalized records in panic printk: Ignore waiter on panic
kernel/printk/internal.h | 1 + kernel/printk/printk.c | 64 +++++++++++++++++++------------ kernel/printk/printk_ringbuffer.c | 9 +++-- 3 files changed, 45 insertions(+), 29 deletions(-)
base-commit: 29fda1ad2a64a62e1c51d61207396e2de1c67362 -- 2.39.2
| |