浏览代码

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
Linus Torvalds 16 年之前
父节点
当前提交
5723ff931a
共有 4 个文件被更改,包括 7 次插入1 次删除
  1. 1 0
      arch/sparc/kernel/sun4d_smp.c
  2. 1 0
      arch/sparc/kernel/sun4m_smp.c
  3. 1 1
      arch/sparc64/kernel/chmc.c
  4. 4 0
      arch/sparc64/kernel/smp.c

+ 1 - 0
arch/sparc/kernel/sun4d_smp.c

@@ -20,6 +20,7 @@
 #include <linux/swap.h>
 #include <linux/profile.h>
 #include <linux/delay.h>
+#include <linux/cpu.h>
 
 #include <asm/ptrace.h>
 #include <asm/atomic.h>

+ 1 - 0
arch/sparc/kernel/sun4m_smp.c

@@ -17,6 +17,7 @@
 #include <linux/swap.h>
 #include <linux/profile.h>
 #include <linux/delay.h>
+#include <linux/cpu.h>
 
 #include <asm/cacheflush.h>
 #include <asm/tlbflush.h>

+ 1 - 1
arch/sparc64/kernel/chmc.c

@@ -831,7 +831,7 @@ static int __init us3mc_init(void)
 	if (!us3mc_platform())
 		return -ENODEV;
 
-	__asm__ ("rdpr %%ver, %0" : "=r" (ver));
+	__asm__ __volatile__("rdpr %%ver, %0" : "=r" (ver));
 	if ((ver >> 32UL) == __JALAPENO_ID ||
 	    (ver >> 32UL) == __SERRANO_ID) {
 		mc_type = MC_TYPE_JBUS;

+ 4 - 0
arch/sparc64/kernel/smp.c

@@ -21,6 +21,7 @@
 #include <linux/jiffies.h>
 #include <linux/profile.h>
 #include <linux/lmb.h>
+#include <linux/cpu.h>
 
 #include <asm/head.h>
 #include <asm/ptrace.h>
@@ -115,6 +116,9 @@ void __cpuinit smp_callin(void)
 	atomic_inc(&init_mm.mm_count);
 	current->active_mm = &init_mm;
 
+	/* inform the notifiers about the new cpu */
+	notify_cpu_starting(cpuid);
+
 	while (!cpu_isset(cpuid, smp_commenced_mask))
 		rmb();