diff options
author | Joe Perches <joe@perches.com> | 2012-07-30 17:40:15 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-07-30 20:25:14 -0400 |
commit | b778b3f25baf46dd88f16d51f1682828be0aa2ad (patch) | |
tree | 8e7509926c89e7efdacf8bc80cd3cc0d31bb4592 /sound | |
parent | 533574c6bc30cf526cc1c41bde050c854a945efb (diff) |
sound: use printk_get_level and printk_skip_level
Make the output logging routine independent of the KERN_<LEVEL> style.
Signed-off-by: Joe Perches <joe@perches.com>
Cc: Kay Sievers <kay.sievers@vrfy.org>
Cc: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'sound')
-rw-r--r-- | sound/core/misc.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/sound/core/misc.c b/sound/core/misc.c index 768167925409..30e027ecf4da 100644 --- a/sound/core/misc.c +++ b/sound/core/misc.c | |||
@@ -68,6 +68,7 @@ void __snd_printk(unsigned int level, const char *path, int line, | |||
68 | { | 68 | { |
69 | va_list args; | 69 | va_list args; |
70 | #ifdef CONFIG_SND_VERBOSE_PRINTK | 70 | #ifdef CONFIG_SND_VERBOSE_PRINTK |
71 | int kern_level; | ||
71 | struct va_format vaf; | 72 | struct va_format vaf; |
72 | char verbose_fmt[] = KERN_DEFAULT "ALSA %s:%d %pV"; | 73 | char verbose_fmt[] = KERN_DEFAULT "ALSA %s:%d %pV"; |
73 | #endif | 74 | #endif |
@@ -81,12 +82,16 @@ void __snd_printk(unsigned int level, const char *path, int line, | |||
81 | #ifdef CONFIG_SND_VERBOSE_PRINTK | 82 | #ifdef CONFIG_SND_VERBOSE_PRINTK |
82 | vaf.fmt = format; | 83 | vaf.fmt = format; |
83 | vaf.va = &args; | 84 | vaf.va = &args; |
84 | if (format[0] == '<' && format[2] == '>') { | 85 | |
85 | memcpy(verbose_fmt, format, 3); | 86 | kern_level = printk_get_level(format); |
86 | vaf.fmt = format + 3; | 87 | if (kern_level) { |
88 | const char *end_of_header = printk_skip_level(format); | ||
89 | memcpy(verbose_fmt, format, end_of_header - format); | ||
90 | vaf.fmt = end_of_header; | ||
87 | } else if (level) | 91 | } else if (level) |
88 | memcpy(verbose_fmt, KERN_DEBUG, 3); | 92 | memcpy(verbose_fmt, KERN_DEBUG, sizeof(KERN_DEBUG) - 1); |
89 | printk(verbose_fmt, sanity_file_name(path), line, &vaf); | 93 | printk(verbose_fmt, sanity_file_name(path), line, &vaf); |
94 | |||
90 | #else | 95 | #else |
91 | vprintk(format, args); | 96 | vprintk(format, args); |
92 | #endif | 97 | #endif |