Hello, Here is a v5 for the first series to rework the printk subsystem. The v4 is here [0]. This first series only replaces the existing ringbuffer implementation. No locking is removed. The semantics/behavior of printk are kept the same except for a minor optimization that is reverted (patch 3). RFC patches for various userspace tools to dump the kernel log are available: crash [1], makedumpfile [2], kexec-tools [3]. This series is based on v5.8-rc4. The list of changes since v4: printk_ringbuffer ================= - added new prb_first_valid_seq() for readers to retrieve the oldest valid sequence number - prb_first_seq(): now static printk.c ======== - devkmsg_read(): fixed returning EPIPE on buffer wrap [4] - setup_log_buf(): fixed printk conversion specifier [5] - replace all prb_first_seq() usage with the new prb_first_valid_seq() (because that is what the readers are actually interested in) [0] https://lkml.kernel.org/r/20200707145932.8752-1-john.ogness@xxxxxxxxxxxxx [1] https://github.com/Linutronix/crash.git (printk branch) [2] https://github.com/Linutronix/makedumpfile.git (printk branch) [3] https://github.com/Linutronix/kexec-tools.git (printk branch) [4] https://lkml.kernel.org/r/87zh89kkek.fsf@xxxxxxxxxxxxxxxxxxxxx [5] https://lkml.kernel.org/r/87r1tmcfhf.fsf@xxxxxxxxxxxxxxxxxxxxx John Ogness (4): crash: add VMCOREINFO macro to define offset in a struct declared by typedef printk: add lockless ringbuffer Revert "printk: lock/unlock console only for new logbuf entries" printk: use the lockless ringbuffer include/linux/crash_core.h | 3 + kernel/printk/Makefile | 1 + kernel/printk/printk.c | 950 ++++++++-------- kernel/printk/printk_ringbuffer.c | 1687 +++++++++++++++++++++++++++++ kernel/printk/printk_ringbuffer.h | 399 +++++++ 5 files changed, 2586 insertions(+), 454 deletions(-) create mode 100644 kernel/printk/printk_ringbuffer.c create mode 100644 kernel/printk/printk_ringbuffer.h -- 2.20.1 _______________________________________________ kexec mailing list kexec@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/kexec