Hi, This patch series does two things: 1) Add function to dump the printk buffer messages directly to consoles. To do this properly, access to printk private items like PRINTK_MESSAGE_MAX is required. So, the function is implemented in printk.c as suggested by John Ogness. This function may sleep as it needs console related locks. 2) Add code in sysrq.c to call the above mentioned function when sysrq+D is pressed. As the above function may sleep, it cannot be called from interrupt context. A work is queued in the system unbound workqueue to call the function when the key is pressed. Link to previous discussion: - https://lore.kernel.org/linux-serial/20231221133953.1507021-1-sreenath.vijayan@xxxxxxxx/ Changelog: V2 -> V3: - split the implementation into two commits - added function in printk.c to dump printk buffer to consoles - added Suggested-by tag - removed code to dump printk buffer from sysrq.c and called new function V1 -> V2: - modified kernel ring buffer to printk ring buffer - allocated buf dynamically to prevent stack frame size warnings - used buf of size 2048 to match PRINTK_MESSAGE_MAX and added comment -- Sreenath Sreenath Vijayan (2): printk: Add function to dump printk buffer directly to consoles tty/sysrq: Dump printk ring buffer messages via sysrq Documentation/admin-guide/sysrq.rst | 2 ++ drivers/tty/sysrq.c | 20 ++++++++++++++++- include/linux/printk.h | 4 ++++ kernel/printk/printk.c | 33 +++++++++++++++++++++++++++++ 4 files changed, 58 insertions(+), 1 deletion(-) -- 2.43.0