Messages in this thread | | | From | Sumit Garg <> | Subject | [PATCH v4 0/4] kdb: Improve console handling | Date | Fri, 29 May 2020 16:56:43 +0530 |
| |
This patch-set is aimed to improve console handling especially when kdb operates in NMI context.
Brief description of enhancements: - Add status check for console prior to invoking corresponding handler. - Fixup to avoid possible deadlock in NMI context due to usage of locks in the console handlers. - Prefer usage of polling I/O driver mode (lockless APIs) over invocation of console handlers.
Changes in v4: - Use dbg_io_ops->write_char() directly instead of passing it as a function pointer. - Use "struct console" rather than "struct tty_driver" for comparison. - Make commit descriptions and comments more informative. - Add review tag for patch #2.
Changes in v3: - Split patch to have separate patch for console status check. - New patch to re-factor kdb message emit code. - New patch to prefer polling I/O over console mode. - Add code comments to describe usage of oops_in_progress.
Changes in v2: - Use oops_in_progress directly instead of bust_spinlocks().
Sumit Garg (4): kdb: Re-factor kdb_printf() message write code kdb: Check status of console prior to invoking handlers kdb: Make kdb_printf() console handling more robust kdb: Switch to use safer dbg_io_ops over console APIs
drivers/tty/serial/kgdb_nmi.c | 2 +- drivers/tty/serial/kgdboc.c | 4 +-- drivers/usb/early/ehci-dbgp.c | 3 +- include/linux/kgdb.h | 5 ++- kernel/debug/kdb/kdb_io.c | 76 ++++++++++++++++++++++++++----------------- 5 files changed, 54 insertions(+), 36 deletions(-)
-- 2.7.4
| |