Commit a3bc0dbc authored by Andrew Morton's avatar Andrew Morton Committed by Linus Torvalds

[PATCH] smp_call_function_single() cleanup

If we're going to implement smp_call_function_single() on three architecture
with the same prototype then it should have a declaration in a
non-arch-specific header file.

Move it into <linux/smp.h>.

Cc: Stephane Eranian <eranian@hpl.hp.com>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent eaa70773
...@@ -683,8 +683,8 @@ __smp_call_function_single(int cpu, void (*func) (void *info), void *info, ...@@ -683,8 +683,8 @@ __smp_call_function_single(int cpu, void (*func) (void *info), void *info,
* or is or has executed. * or is or has executed.
*/ */
int smp_call_function_single (int cpu, void (*func) (void *info), void *info, int smp_call_function_single(int cpu, void (*func) (void *info), void *info,
int nonatomic, int wait) int nonatomic, int wait)
{ {
/* prevent preemption and reschedule on another processor */ /* prevent preemption and reschedule on another processor */
int me = get_cpu(); int me = get_cpu();
......
...@@ -34,6 +34,7 @@ ...@@ -34,6 +34,7 @@
#include <linux/file.h> #include <linux/file.h>
#include <linux/poll.h> #include <linux/poll.h>
#include <linux/vfs.h> #include <linux/vfs.h>
#include <linux/smp.h>
#include <linux/pagemap.h> #include <linux/pagemap.h>
#include <linux/mount.h> #include <linux/mount.h>
#include <linux/bitops.h> #include <linux/bitops.h>
......
...@@ -32,9 +32,10 @@ ...@@ -32,9 +32,10 @@
#include <linux/cpumask.h> #include <linux/cpumask.h>
#include <linux/smp_lock.h> #include <linux/smp_lock.h>
#include <linux/nodemask.h> #include <linux/nodemask.h>
#include <linux/smp.h>
#include <asm/processor.h> #include <asm/processor.h>
#include <asm/topology.h> #include <asm/topology.h>
#include <asm/smp.h>
#include <asm/semaphore.h> #include <asm/semaphore.h>
#include <asm/uaccess.h> #include <asm/uaccess.h>
#include <asm/sal.h> #include <asm/sal.h>
......
...@@ -46,9 +46,10 @@ ...@@ -46,9 +46,10 @@
#include <linux/bootmem.h> #include <linux/bootmem.h>
#include <linux/thread_info.h> #include <linux/thread_info.h>
#include <linux/module.h> #include <linux/module.h>
#include <linux/delay.h> #include <linux/delay.h>
#include <linux/mc146818rtc.h> #include <linux/mc146818rtc.h>
#include <linux/smp.h>
#include <asm/mtrr.h> #include <asm/mtrr.h>
#include <asm/pgalloc.h> #include <asm/pgalloc.h>
#include <asm/desc.h> #include <asm/desc.h>
......
...@@ -122,8 +122,6 @@ extern void __init smp_build_cpu_map(void); ...@@ -122,8 +122,6 @@ extern void __init smp_build_cpu_map(void);
extern void __init init_smp_config (void); extern void __init init_smp_config (void);
extern void smp_do_timer (struct pt_regs *regs); extern void smp_do_timer (struct pt_regs *regs);
extern int smp_call_function_single (int cpuid, void (*func) (void *info), void *info,
int retry, int wait);
extern void smp_send_reschedule (int cpu); extern void smp_send_reschedule (int cpu);
extern void lock_ipi_calllock(void); extern void lock_ipi_calllock(void);
extern void unlock_ipi_calllock(void); extern void unlock_ipi_calllock(void);
......
...@@ -48,8 +48,6 @@ extern void unlock_ipi_call_lock(void); ...@@ -48,8 +48,6 @@ extern void unlock_ipi_call_lock(void);
extern int smp_num_siblings; extern int smp_num_siblings;
extern void smp_send_reschedule(int cpu); extern void smp_send_reschedule(int cpu);
void smp_stop_cpu(void); void smp_stop_cpu(void);
extern int smp_call_function_single(int cpuid, void (*func) (void *info),
void *info, int retry, int wait);
extern cpumask_t cpu_sibling_map[NR_CPUS]; extern cpumask_t cpu_sibling_map[NR_CPUS];
extern cpumask_t cpu_core_map[NR_CPUS]; extern cpumask_t cpu_core_map[NR_CPUS];
......
...@@ -53,6 +53,9 @@ extern void smp_cpus_done(unsigned int max_cpus); ...@@ -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(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 * Call a function on all processors
*/ */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment