[1/2] sparc32, sun4m: bugfix in SMP IPI traphandler

Message ID 1307624049-29690-1-git-send-email-daniel@gaisler.com
State Accepted
Delegated to: David Miller
Headers show

Commit Message

Daniel Hellstrom June 9, 2011, 12:54 p.m.
Three new IPIs were introduced by commit
ecbc42b70acbc6327adefe9635db93fcf62bf59d ("sparc32, sun4m:
Implemented SMP IPIs support for SUN4M machines"), the
old handler was already prepared for IPIs but handled only
IRQ14 and IRQ13, this patch adds support for the new IPI at

The IPI trap handler looks at the mask rather than the
pending IRQ/IPI, this bug may have masked the problem
above, introduced by the same commit.

Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
 arch/sparc/kernel/entry.S |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)


diff --git a/arch/sparc/kernel/entry.S b/arch/sparc/kernel/entry.S
index c4e6167..9fe08a1 100644
--- a/arch/sparc/kernel/entry.S
+++ b/arch/sparc/kernel/entry.S
@@ -229,7 +229,7 @@  real_irq_entry:
 #ifdef CONFIG_SMP
 	.globl	patchme_maybe_smp_msg
-	cmp	%l7, 12
+	cmp	%l7, 11
 	bgu	maybe_smp4m_msg
@@ -293,7 +293,7 @@  maybe_smp4m_msg:
 	wr	%l4, PSR_ET, %psr
-	sll	%o2, 28, %o2		! shift for simpler checks below
+	sll	%o3, 28, %o2		! shift for simpler checks below
 	andcc	%o2, 0x1, %g0
 	beq,a	maybe_smp4m_msg_check_mask