aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/include/asm
diff options
context:
space:
mode:
authorMichael Ellerman <michael@ozlabs.org>2011-04-11 17:46:19 -0400
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>2011-04-20 03:01:18 -0400
commitde300974761d92f71cb583730ac9e1d4eb1b7156 (patch)
treebfce8daf1dec8dff5af215bcf7647f38632490d4 /arch/powerpc/include/asm
parent6c5b59b913874cae535a324a671b7ed4f17e6397 (diff)
powerpc/smp: smp_ops->kick_cpu() should be able to fail
When we start a cpu we use smp_ops->kick_cpu(), which currently returns void, it should be able to fail. Convert it to return int, and update all uses. Convert all the current error cases to return -ENOENT, which is what would eventually be returned by __cpu_up() currently when it doesn't detect the cpu as coming up in time. Signed-off-by: Michael Ellerman <michael@ellerman.id.au> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'arch/powerpc/include/asm')
-rw-r--r--arch/powerpc/include/asm/machdep.h2
-rw-r--r--arch/powerpc/include/asm/smp.h2
2 files changed, 2 insertions, 2 deletions
diff --git a/arch/powerpc/include/asm/machdep.h b/arch/powerpc/include/asm/machdep.h
index 493dbb38e1b..c6345acf166 100644
--- a/arch/powerpc/include/asm/machdep.h
+++ b/arch/powerpc/include/asm/machdep.h
@@ -33,7 +33,7 @@ struct kimage;
33struct smp_ops_t { 33struct smp_ops_t {
34 void (*message_pass)(int target, int msg); 34 void (*message_pass)(int target, int msg);
35 int (*probe)(void); 35 int (*probe)(void);
36 void (*kick_cpu)(int nr); 36 int (*kick_cpu)(int nr);
37 void (*setup_cpu)(int nr); 37 void (*setup_cpu)(int nr);
38 void (*bringup_done)(void); 38 void (*bringup_done)(void);
39 void (*take_timebase)(void); 39 void (*take_timebase)(void);
diff --git a/arch/powerpc/include/asm/smp.h b/arch/powerpc/include/asm/smp.h
index bb4c033a8fb..50873493a97 100644
--- a/arch/powerpc/include/asm/smp.h
+++ b/arch/powerpc/include/asm/smp.h
@@ -150,7 +150,7 @@ extern int smt_enabled_at_boot;
150 150
151extern int smp_mpic_probe(void); 151extern int smp_mpic_probe(void);
152extern void smp_mpic_setup_cpu(int cpu); 152extern void smp_mpic_setup_cpu(int cpu);
153extern void smp_generic_kick_cpu(int nr); 153extern int smp_generic_kick_cpu(int nr);
154 154
155extern void smp_generic_give_timebase(void); 155extern void smp_generic_give_timebase(void);
156extern void smp_generic_take_timebase(void); 156extern void smp_generic_take_timebase(void);