path: root/arch/sparc/kernel
diff options
authorDavid S. Miller <davem@davemloft.net>2012-05-10 11:00:46 -0700
committerDavid S. Miller <davem@davemloft.net>2012-05-10 11:00:46 -0700
commita5a737e090e25981e99d69f01400e3a80356581c (patch)
tree800716c007575b1c316299300e3316d0d94ed243 /arch/sparc/kernel
parentbc46f9375a286d05f84a9464efc2b7f1f5614ff4 (diff)
sparc64: Do not clobber %g2 in xcall_fetch_glob_regs().
%g2 is meant to hold the CPUID number throughout this routine, since at the very beginning, and at the very end, we use %g2 to calculate indexes into per-cpu arrays. However we erroneously clobber it in order to hold the %cwp register value mid-stream. Fix this code to use %g3 for the %cwp read and related calulcations instead. Reported-by: Meelis Roos <mroos@linux.ee> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'arch/sparc/kernel')
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/sparc/kernel/central.c b/arch/sparc/kernel/central.c
index 38d48a59879..9708851a8b9 100644
--- a/arch/sparc/kernel/central.c
+++ b/arch/sparc/kernel/central.c
@@ -269,4 +269,4 @@ static int __init sunfire_init(void)
return 0;