[PATCH 0/4] KDB: Fix dmesg command

From: Anton Vorontsov
Date: Fri Jul 20 2012 - 20:28:13 EST

Hi all,

The dmesg command appears to be broken after the printk rework. The old
logic in the kdb code makes no sense in terms of current printk/logging
storage format, and KDB simply hangs forever upon entering 'dmesg'

The first patch revives the command by switching to kmsg_dumper iterator.
As a side-effect, the code is now much more simpler.

A few changes were needed in the printk.c: we needed unlocked variant
of the kmsg_dumper iterator, but these can surely wait for 3.6.

It's probably too late even for the first patch to go to 3.5, but
I'll try to convince otherwise. :-) Here we go:

- The current code is broken for sure, and has no hope to work at
all. It is a regression;
- The new code works for me, and probably works for everyone else;
- If it compiles (and I urge everyone to compile-test it on your
setup), it hardly can make things worse.


include/linux/kmsg_dump.h | 16 +++++++
kernel/debug/kdb/kdb_main.c | 91 +++++++++++++++-------------------------
kernel/debug/kdb/kdb_private.h | 1 -
kernel/printk.c | 83 +++++++++++++++++++++++-------------
4 files changed, 104 insertions(+), 87 deletions(-)

Anton Vorontsov
Email: cbouatmailru@xxxxxxxxx
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/