aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2008-10-13 13:07:53 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2008-10-13 13:07:53 -0400
commit5723ff931a94acf0738df42604ee89f852e151b0 (patch)
tree99be1b14cd5f2b5e987773a9271627b746f84a4b
parentbe3bfbba8f7f6c8f32e8444ef895433701a3f801 (diff)
parent615c9136b385d5225d3ece20aa30b28a90c438d6 (diff)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6: chmc: Mark %ver register inline asm with __volatile__ sparc64: Add missing notify_cpu_starting() call. sparc32: fix build errors
-rw-r--r--arch/sparc/kernel/sun4d_smp.c1
-rw-r--r--arch/sparc/kernel/sun4m_smp.c1
-rw-r--r--arch/sparc64/kernel/chmc.c2
-rw-r--r--arch/sparc64/kernel/smp.c4
4 files changed, 7 insertions, 1 deletions
diff --git a/arch/sparc/kernel/sun4d_smp.c b/arch/sparc/kernel/sun4d_smp.c
index ce3d45db94e9..7a6a5e795928 100644
--- a/arch/sparc/kernel/sun4d_smp.c
+++ b/arch/sparc/kernel/sun4d_smp.c
@@ -20,6 +20,7 @@
20#include <linux/swap.h> 20#include <linux/swap.h>
21#include <linux/profile.h> 21#include <linux/profile.h>
22#include <linux/delay.h> 22#include <linux/delay.h>
23#include <linux/cpu.h>
23 24
24#include <asm/ptrace.h> 25#include <asm/ptrace.h>
25#include <asm/atomic.h> 26#include <asm/atomic.h>
diff --git a/arch/sparc/kernel/sun4m_smp.c b/arch/sparc/kernel/sun4m_smp.c
index 0c564ba9e709..5fc386d08c47 100644
--- a/arch/sparc/kernel/sun4m_smp.c
+++ b/arch/sparc/kernel/sun4m_smp.c
@@ -17,6 +17,7 @@
17#include <linux/swap.h> 17#include <linux/swap.h>
18#include <linux/profile.h> 18#include <linux/profile.h>
19#include <linux/delay.h> 19#include <linux/delay.h>
20#include <linux/cpu.h>
20 21
21#include <asm/cacheflush.h> 22#include <asm/cacheflush.h>
22#include <asm/tlbflush.h> 23#include <asm/tlbflush.h>
diff --git a/arch/sparc64/kernel/chmc.c b/arch/sparc64/kernel/chmc.c
index 967b04886822..3b9f4d6e14a9 100644
--- a/arch/sparc64/kernel/chmc.c
+++ b/arch/sparc64/kernel/chmc.c
@@ -831,7 +831,7 @@ static int __init us3mc_init(void)
831 if (!us3mc_platform()) 831 if (!us3mc_platform())
832 return -ENODEV; 832 return -ENODEV;
833 833
834 __asm__ ("rdpr %%ver, %0" : "=r" (ver)); 834 __asm__ __volatile__("rdpr %%ver, %0" : "=r" (ver));
835 if ((ver >> 32UL) == __JALAPENO_ID || 835 if ((ver >> 32UL) == __JALAPENO_ID ||
836 (ver >> 32UL) == __SERRANO_ID) { 836 (ver >> 32UL) == __SERRANO_ID) {
837 mc_type = MC_TYPE_JBUS; 837 mc_type = MC_TYPE_JBUS;
diff --git a/arch/sparc64/kernel/smp.c b/arch/sparc64/kernel/smp.c
index 2be166c544ca..e5627118e613 100644
--- a/arch/sparc64/kernel/smp.c
+++ b/arch/sparc64/kernel/smp.c
@@ -21,6 +21,7 @@
21#include <linux/jiffies.h> 21#include <linux/jiffies.h>
22#include <linux/profile.h> 22#include <linux/profile.h>
23#include <linux/lmb.h> 23#include <linux/lmb.h>
24#include <linux/cpu.h>
24 25
25#include <asm/head.h> 26#include <asm/head.h>
26#include <asm/ptrace.h> 27#include <asm/ptrace.h>
@@ -115,6 +116,9 @@ void __cpuinit smp_callin(void)
115 atomic_inc(&init_mm.mm_count); 116 atomic_inc(&init_mm.mm_count);
116 current->active_mm = &init_mm; 117 current->active_mm = &init_mm;
117 118
119 /* inform the notifiers about the new cpu */
120 notify_cpu_starting(cpuid);
121
118 while (!cpu_isset(cpuid, smp_commenced_mask)) 122 while (!cpu_isset(cpuid, smp_commenced_mask))
119 rmb(); 123 rmb();
120 124