Commit 35e7f788 authored by James Hogan's avatar James Hogan Committed by Ralf Baechle

MIPS: Fix printk continuations in cpu-bugs64.c

64-bit pre-r6 kernels output the following broken printk continuation
lines during boot:

Checking for the multiply/shift bug...
no.
Checking for the daddiu bug...
no.
Checking for the daddi bug...
no.

Fix the printk continuations in cpu-bugs64.c to use pr_cont to restore
the correct output:

Checking for the multiply/shift bug... no.
Checking for the daddiu bug... no.
Checking for the daddi bug... no.
Signed-off-by: default avatarJames Hogan <james.hogan@imgtec.com>
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/14916/Signed-off-by: default avatarRalf Baechle <ralf@linux-mips.org>
parent 209ec69a
...@@ -148,11 +148,11 @@ static inline void check_mult_sh(void) ...@@ -148,11 +148,11 @@ static inline void check_mult_sh(void)
bug = 1; bug = 1;
if (bug == 0) { if (bug == 0) {
printk("no.\n"); pr_cont("no.\n");
return; return;
} }
printk("yes, workaround... "); pr_cont("yes, workaround... ");
fix = 1; fix = 1;
for (i = 0; i < 8; i++) for (i = 0; i < 8; i++)
...@@ -160,11 +160,11 @@ static inline void check_mult_sh(void) ...@@ -160,11 +160,11 @@ static inline void check_mult_sh(void)
fix = 0; fix = 0;
if (fix == 1) { if (fix == 1) {
printk("yes.\n"); pr_cont("yes.\n");
return; return;
} }
printk("no.\n"); pr_cont("no.\n");
panic(bug64hit, !R4000_WAR ? r4kwar : nowar); panic(bug64hit, !R4000_WAR ? r4kwar : nowar);
} }
...@@ -218,11 +218,11 @@ static inline void check_daddi(void) ...@@ -218,11 +218,11 @@ static inline void check_daddi(void)
local_irq_restore(flags); local_irq_restore(flags);
if (daddi_ov) { if (daddi_ov) {
printk("no.\n"); pr_cont("no.\n");
return; return;
} }
printk("yes, workaround... "); pr_cont("yes, workaround... ");
local_irq_save(flags); local_irq_save(flags);
handler = set_except_vector(EXCCODE_OV, handle_daddi_ov); handler = set_except_vector(EXCCODE_OV, handle_daddi_ov);
...@@ -236,11 +236,11 @@ static inline void check_daddi(void) ...@@ -236,11 +236,11 @@ static inline void check_daddi(void)
local_irq_restore(flags); local_irq_restore(flags);
if (daddi_ov) { if (daddi_ov) {
printk("yes.\n"); pr_cont("yes.\n");
return; return;
} }
printk("no.\n"); pr_cont("no.\n");
panic(bug64hit, !DADDI_WAR ? daddiwar : nowar); panic(bug64hit, !DADDI_WAR ? daddiwar : nowar);
} }
...@@ -288,11 +288,11 @@ static inline void check_daddiu(void) ...@@ -288,11 +288,11 @@ static inline void check_daddiu(void)
daddiu_bug = v != w; daddiu_bug = v != w;
if (!daddiu_bug) { if (!daddiu_bug) {
printk("no.\n"); pr_cont("no.\n");
return; return;
} }
printk("yes, workaround... "); pr_cont("yes, workaround... ");
asm volatile( asm volatile(
"addiu %2, $0, %3\n\t" "addiu %2, $0, %3\n\t"
...@@ -304,11 +304,11 @@ static inline void check_daddiu(void) ...@@ -304,11 +304,11 @@ static inline void check_daddiu(void)
: "I" (0xffffffffffffdb9aUL), "I" (0x1234)); : "I" (0xffffffffffffdb9aUL), "I" (0x1234));
if (v == w) { if (v == w) {
printk("yes.\n"); pr_cont("yes.\n");
return; return;
} }
printk("no.\n"); pr_cont("no.\n");
panic(bug64hit, !DADDI_WAR ? daddiwar : nowar); panic(bug64hit, !DADDI_WAR ? daddiwar : nowar);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment