printk: do not mangle valid userspace syslog prefixes
authorKay Sievers <kay.sievers@vrfy.org>
Sun, 13 Mar 2011 02:19:51 +0000 (03:19 +0100)
committerGreg Kroah-Hartman <gregkh@suse.de>
Mon, 14 Mar 2011 15:49:16 +0000 (08:49 -0700)
commit9d90c8d9cde929cbc575098e825d7c29d9f45054
tree49cd83812a9cbbb40cb0c6b73b13455cad0029ea
parent54fad532b29aa9145f12a83f4f82820c2f23b4e2
printk: do not mangle valid userspace syslog prefixes

printk: do not mangle valid userspace syslog prefixes with /dev/kmsg

Log messages passed to the kernel log by using /dev/kmsg or /dev/ttyprintk
might contain a syslog prefix including the syslog facility value.

This makes printk to recognize these headers properly, extract the real log
level from it to use, and add the prefix as a proper prefix to the
log buffer, instead of wrongly printing it as the log message text.

Before:
  $ echo '<14>text' > /dev/kmsg
  $ dmesg -r
  <4>[135159.594810] <14>text

After:
  $ echo '<14>text' > /dev/kmsg
  $ dmesg -r
  <14>[   50.750654] text

Cc: Lennart Poettering <lennart@poettering.net>
Signed-off-by: Kay Sievers <kay.sievers@vrfy.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
kernel/printk.c