aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorJoe Perches <joe@perches.com>2014-12-10 18:45:53 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2014-12-10 20:41:10 -0500
commit1dc6244bd6d4f62239487fb0befc41c63e117290 (patch)
treee4297d59fc7ee4130059ad082ac7cf206195d408 /arch
parent9e3961a0979817c612b10b2da4f3045ec9faa779 (diff)
printk: remove used-once early_vprintk
Eliminate the unlikely possibility of message interleaving for early_printk/early_vprintk use. early_vprintk can be done via the %pV extension so remove this unnecessary function and change early_printk to have the equivalent vprintk code. All uses of early_printk already end with a newline so also remove the unnecessary newline from the early_printk function. Signed-off-by: Joe Perches <joe@perches.com> Acked-by: Chris Metcalf <cmetcalf@tilera.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'arch')
-rw-r--r--arch/tile/kernel/early_printk.c19
1 files changed, 13 insertions, 6 deletions
diff --git a/arch/tile/kernel/early_printk.c b/arch/tile/kernel/early_printk.c
index b608e00e7f6d..aefb2c086726 100644
--- a/arch/tile/kernel/early_printk.c
+++ b/arch/tile/kernel/early_printk.c
@@ -43,13 +43,20 @@ static struct console early_hv_console = {
43 43
44void early_panic(const char *fmt, ...) 44void early_panic(const char *fmt, ...)
45{ 45{
46 va_list ap; 46 struct va_format vaf;
47 va_list args;
48
47 arch_local_irq_disable_all(); 49 arch_local_irq_disable_all();
48 va_start(ap, fmt); 50
49 early_printk("Kernel panic - not syncing: "); 51 va_start(args, fmt);
50 early_vprintk(fmt, ap); 52
51 early_printk("\n"); 53 vaf.fmt = fmt;
52 va_end(ap); 54 vaf.va = &args;
55
56 early_printk("Kernel panic - not syncing: %pV", &vaf);
57
58 va_end(args);
59
53 dump_stack(); 60 dump_stack();
54 hv_halt(); 61 hv_halt();
55} 62}