aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/platforms/pseries/hotplug-cpu.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/powerpc/platforms/pseries/hotplug-cpu.c')
-rw-r--r--arch/powerpc/platforms/pseries/hotplug-cpu.c29
1 files changed, 15 insertions, 14 deletions
diff --git a/arch/powerpc/platforms/pseries/hotplug-cpu.c b/arch/powerpc/platforms/pseries/hotplug-cpu.c
index e78e8ac95550..f460b9cbfd46 100644
--- a/arch/powerpc/platforms/pseries/hotplug-cpu.c
+++ b/arch/powerpc/platforms/pseries/hotplug-cpu.c
@@ -53,7 +53,7 @@ static void rtas_stop_self(void)
53 panic("Alas, I survived.\n"); 53 panic("Alas, I survived.\n");
54} 54}
55 55
56static void pSeries_mach_cpu_die(void) 56static void pseries_mach_cpu_die(void)
57{ 57{
58 local_irq_disable(); 58 local_irq_disable();
59 idle_task_exit(); 59 idle_task_exit();
@@ -88,7 +88,7 @@ static int query_cpu_stopped(unsigned int pcpu)
88 return cpu_status; 88 return cpu_status;
89} 89}
90 90
91static int pSeries_cpu_disable(void) 91static int pseries_cpu_disable(void)
92{ 92{
93 int cpu = smp_processor_id(); 93 int cpu = smp_processor_id();
94 94
@@ -104,7 +104,7 @@ static int pSeries_cpu_disable(void)
104 return 0; 104 return 0;
105} 105}
106 106
107static void pSeries_cpu_die(unsigned int cpu) 107static void pseries_cpu_die(unsigned int cpu)
108{ 108{
109 int tries; 109 int tries;
110 int cpu_status; 110 int cpu_status;
@@ -136,7 +136,7 @@ static void pSeries_cpu_die(unsigned int cpu)
136 * the logical ids for sibling SMT threads x and y are adjacent, such 136 * the logical ids for sibling SMT threads x and y are adjacent, such
137 * that x^1 == y and y^1 == x. 137 * that x^1 == y and y^1 == x.
138 */ 138 */
139static int pSeries_add_processor(struct device_node *np) 139static int pseries_add_processor(struct device_node *np)
140{ 140{
141 unsigned int cpu; 141 unsigned int cpu;
142 cpumask_t candidate_map, tmp = CPU_MASK_NONE; 142 cpumask_t candidate_map, tmp = CPU_MASK_NONE;
@@ -197,7 +197,7 @@ out_unlock:
197 * the hard id in the paca(s) to -1 to be consistent with boot time 197 * the hard id in the paca(s) to -1 to be consistent with boot time
198 * convention for non-present cpus. 198 * convention for non-present cpus.
199 */ 199 */
200static void pSeries_remove_processor(struct device_node *np) 200static void pseries_remove_processor(struct device_node *np)
201{ 201{
202 unsigned int cpu; 202 unsigned int cpu;
203 int len, nthreads, i; 203 int len, nthreads, i;
@@ -226,17 +226,18 @@ static void pSeries_remove_processor(struct device_node *np)
226 unlock_cpu_hotplug(); 226 unlock_cpu_hotplug();
227} 227}
228 228
229static int pSeries_smp_notifier(struct notifier_block *nb, unsigned long action, void *node) 229static int pseries_smp_notifier(struct notifier_block *nb,
230 unsigned long action, void *node)
230{ 231{
231 int err = NOTIFY_OK; 232 int err = NOTIFY_OK;
232 233
233 switch (action) { 234 switch (action) {
234 case PSERIES_RECONFIG_ADD: 235 case PSERIES_RECONFIG_ADD:
235 if (pSeries_add_processor(node)) 236 if (pseries_add_processor(node))
236 err = NOTIFY_BAD; 237 err = NOTIFY_BAD;
237 break; 238 break;
238 case PSERIES_RECONFIG_REMOVE: 239 case PSERIES_RECONFIG_REMOVE:
239 pSeries_remove_processor(node); 240 pseries_remove_processor(node);
240 break; 241 break;
241 default: 242 default:
242 err = NOTIFY_DONE; 243 err = NOTIFY_DONE;
@@ -245,8 +246,8 @@ static int pSeries_smp_notifier(struct notifier_block *nb, unsigned long action,
245 return err; 246 return err;
246} 247}
247 248
248static struct notifier_block pSeries_smp_nb = { 249static struct notifier_block pseries_smp_nb = {
249 .notifier_call = pSeries_smp_notifier, 250 .notifier_call = pseries_smp_notifier,
250}; 251};
251 252
252static int __init pseries_cpu_hotplug_init(void) 253static int __init pseries_cpu_hotplug_init(void)
@@ -261,13 +262,13 @@ static int __init pseries_cpu_hotplug_init(void)
261 return 0; 262 return 0;
262 } 263 }
263 264
264 ppc_md.cpu_die = pSeries_mach_cpu_die; 265 ppc_md.cpu_die = pseries_mach_cpu_die;
265 smp_ops->cpu_disable = pSeries_cpu_disable; 266 smp_ops->cpu_disable = pseries_cpu_disable;
266 smp_ops->cpu_die = pSeries_cpu_die; 267 smp_ops->cpu_die = pseries_cpu_die;
267 268
268 /* Processors can be added/removed only on LPAR */ 269 /* Processors can be added/removed only on LPAR */
269 if (firmware_has_feature(FW_FEATURE_LPAR)) 270 if (firmware_has_feature(FW_FEATURE_LPAR))
270 pSeries_reconfig_notifier_register(&pSeries_smp_nb); 271 pSeries_reconfig_notifier_register(&pseries_smp_nb);
271 272
272 return 0; 273 return 0;
273} 274}