printk: use vprintk_func in vprintk()
authorSergey Senozhatsky <sergey.senozhatsky@gmail.com>
Tue, 27 Dec 2016 14:16:04 +0000 (23:16 +0900)
committerPetr Mladek <pmladek@suse.com>
Wed, 8 Feb 2017 09:57:32 +0000 (10:57 +0100)
vprintk(), just like printk(), better be using per-cpu printk_func
instead of direct vprintk_emit() call. Just in case if vprintk()
will ever be called from NMI, or from any other context that can
deadlock in printk().

Link: http://lkml.kernel.org/r/20161227141611.940-2-sergey.senozhatsky@gmail.com
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Jan Kara <jack@suse.cz>
Cc: Tejun Heo <tj@kernel.org>
Cc: Calvin Owens <calvinowens@fb.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Andy Lutomirski <luto@kernel.org>
Cc: Peter Hurley <peter@hurleysoftware.com>
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>
Reviewed-by: Steven Rostedt <rostedt@goodmis.org>
Signed-off-by: Petr Mladek <pmladek@suse.com>
kernel/printk/printk.c

index 8b2696420abb5de7347429f52d9a3d46d4dbcd24..106843a83b63f60cd08ce019d105d7d19745e161 100644 (file)
@@ -1803,7 +1803,7 @@ EXPORT_SYMBOL(vprintk_emit);
 
 asmlinkage int vprintk(const char *fmt, va_list args)
 {
-       return vprintk_emit(0, LOGLEVEL_DEFAULT, NULL, 0, fmt, args);
+       return vprintk_func(fmt, args);
 }
 EXPORT_SYMBOL(vprintk);