]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - include/asm-s390/smp.h
Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm
[linux-2.6-omap-h63xx.git] / include / asm-s390 / smp.h
index 218454b918622dbcdae569b9ed341e604d0c73ab..ae89cf2478fcabee3a0e4acf1834465286a9224e 100644 (file)
@@ -19,6 +19,7 @@
 #include <asm/lowcore.h>
 #include <asm/sigp.h>
 #include <asm/ptrace.h>
+#include <asm/system.h>
 
 /*
   s390 specific smp.c headers
@@ -53,10 +54,7 @@ extern void machine_power_off_smp(void);
 
 static inline __u16 hard_smp_processor_id(void)
 {
-        __u16 cpu_address;
-       asm volatile("stap %0" : "=m" (cpu_address));
-        return cpu_address;
+       return stap();
 }
 
 /*
@@ -90,6 +88,11 @@ extern void __cpu_die (unsigned int cpu);
 extern void cpu_die (void) __attribute__ ((noreturn));
 extern int __cpu_up (unsigned int cpu);
 
+extern struct mutex smp_cpu_state_mutex;
+extern int smp_cpu_polarization[];
+
+extern int smp_call_function_mask(cpumask_t mask, void (*func)(void *),
+       void *info, int wait);
 #endif
 
 #ifndef CONFIG_SMP
@@ -103,5 +106,11 @@ static inline void smp_send_stop(void)
 #define smp_cpu_not_running(cpu)       1
 #endif
 
+#ifdef CONFIG_HOTPLUG_CPU
+extern int smp_rescan_cpus(void);
+#else
+static inline int smp_rescan_cpus(void) { return 0; }
+#endif
+
 extern union save_area *zfcpdump_save_areas[NR_CPUS + 1];
 #endif