diff options
| author | Heiko Carstens <heiko.carstens@de.ibm.com> | 2007-05-17 01:11:09 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-05-17 08:23:04 -0400 |
| commit | 79974a0e4c6be6e9a3717b4c5a5d5c44c36b1653 (patch) | |
| tree | 0bf5e98710fa4ae970728ceea7d7d5324f65abcc /include/linux | |
| parent | 8317f14b60c02c69cf7f594e2aabc8a3fdc9618d (diff) | |
Let smp_call_function_single return -EBUSY on UP
All architectures that have an implementation of smp_call_function_single
let it return -EBUSY if it is asked to execute func on the current cpu.
(akpm: except for x86_64). Therefore the UP version must always return
-EBUSY.
[akpm@linux-foundation.org: build fix]
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Cc: Andi Kleen <ak@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/smp.h | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/include/linux/smp.h b/include/linux/smp.h index 3f70149eabbb..96ac21f8dd73 100644 --- a/include/linux/smp.h +++ b/include/linux/smp.h | |||
| @@ -6,6 +6,7 @@ | |||
| 6 | * Alan Cox. <alan@redhat.com> | 6 | * Alan Cox. <alan@redhat.com> |
| 7 | */ | 7 | */ |
| 8 | 8 | ||
| 9 | #include <linux/errno.h> | ||
| 9 | 10 | ||
| 10 | extern void cpu_idle(void); | 11 | extern void cpu_idle(void); |
| 11 | 12 | ||
| @@ -99,11 +100,9 @@ static inline void smp_send_reschedule(int cpu) { } | |||
| 99 | #define num_booting_cpus() 1 | 100 | #define num_booting_cpus() 1 |
| 100 | #define smp_prepare_boot_cpu() do {} while (0) | 101 | #define smp_prepare_boot_cpu() do {} while (0) |
| 101 | static inline int smp_call_function_single(int cpuid, void (*func) (void *info), | 102 | static inline int smp_call_function_single(int cpuid, void (*func) (void *info), |
| 102 | void *info, int retry, int wait) | 103 | void *info, int retry, int wait) |
| 103 | { | 104 | { |
| 104 | /* Disable interrupts here? */ | 105 | return -EBUSY; |
| 105 | func(info); | ||
| 106 | return 0; | ||
| 107 | } | 106 | } |
| 108 | 107 | ||
| 109 | #endif /* !SMP */ | 108 | #endif /* !SMP */ |
