Messages in this thread Patch in this message | | | From | Nick Andrew <> | Subject | [PATCH 2/2] printk: Remember the message level for multi-line output | Date | Sun, 13 Apr 2008 22:27:57 +1000 |
| |
printk: Remember the message level for multi-line output
printk(KERN_ALERT "Danger Will Robinson!\nAlien Approaching!\n");
At present this will result in one message at ALERT level and one at the current default message loglevel (e.g. WARNING). This is non-intuitive.
Modify vprintk() to remember the message loglevel each time it is specified and use it for subsequent lines of output which do not specify one, within the same call to printk.
Signed-off-by: Nick Andrew <nick@nick-andrew.net> --- This is the third revision.
kernel/printk.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/kernel/printk.c b/kernel/printk.c index 02ca845..5c97eb1 100644 --- a/kernel/printk.c +++ b/kernel/printk.c @@ -660,6 +660,7 @@ asmlinkage int vprintk(const char *fmt, va_list args) static char printk_buf[1024]; int printed_len = 0; + int current_log_level = default_message_loglevel; unsigned long flags; int this_cpu; char *p; @@ -709,7 +710,6 @@ asmlinkage int vprintk(const char *fmt, va_list args) */ for (p = printk_buf; *p; p++) { if (new_text_line) { - int current_log_level = default_message_loglevel; /* If a token, set current_log_level and skip over */ if (p[0] == '<' && p[1] >= '0' && p[1] <= '7' && p[2] == '>') {
| |