]> Pileus Git - ~andy/linux/blobdiff - include/linux/smp.h
Remove hardcoding of hard_smp_processor_id on UP systems
[~andy/linux] / include / linux / smp.h
index c93c3fe4308c898cd2a6fa9939305e9b4203bbc5..3f70149eabbb2e7d40c91ce069cce466c3162615 100644 (file)
@@ -53,6 +53,9 @@ extern void smp_cpus_done(unsigned int max_cpus);
  */
 int smp_call_function(void(*func)(void *info), void *info, int retry, int wait);
 
+int smp_call_function_single(int cpuid, void (*func) (void *info), void *info,
+                               int retry, int wait);
+
 /*
  * Call a function on all processors
  */
@@ -80,7 +83,6 @@ void smp_prepare_boot_cpu(void);
  *     These macros fold the SMP functionality into a single CPU system
  */
 #define raw_smp_processor_id()                 0
-#define hard_smp_processor_id()                        0
 static inline int up_smp_call_function(void)
 {
        return 0;
@@ -96,6 +98,13 @@ static inline int up_smp_call_function(void)
 static inline void smp_send_reschedule(int cpu) { }
 #define num_booting_cpus()                     1
 #define smp_prepare_boot_cpu()                 do {} while (0)
+static inline int smp_call_function_single(int cpuid, void (*func) (void *info),
+                               void *info, int retry, int wait)
+{
+       /* Disable interrupts here? */
+       func(info);
+       return 0;
+}
 
 #endif /* !SMP */
 
@@ -125,4 +134,6 @@ static inline void smp_send_reschedule(int cpu) { }
 #define put_cpu()              preempt_enable()
 #define put_cpu_no_resched()   preempt_enable_no_resched()
 
+void smp_setup_processor_id(void);
+
 #endif /* __LINUX_SMP_H */