diff options
author | Michael Ellerman <mpe@ellerman.id.au> | 2015-11-24 22:26:10 +1100 |
---|---|---|
committer | Michael Ellerman <mpe@ellerman.id.au> | 2015-12-17 22:40:55 +1100 |
commit | b2e8590fa1e35c38680dcb87c9d1bfdcc6c61a40 (patch) | |
tree | 6777645c44dea7f9032cd31a5b1da04e46a70869 /arch/powerpc/platforms/pseries/hotplug-cpu.c | |
parent | 08eb105a7c18c917f2ed7afc5a151f0514f26460 (diff) | |
download | linux-b2e8590fa1e35c38680dcb87c9d1bfdcc6c61a40.tar.bz2 |
powerpc/pseries: Use rtas_call_unlocked() in pseries hotplug
Avoid open coding the logic by using rtas_call_unlocked().
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Diffstat (limited to 'arch/powerpc/platforms/pseries/hotplug-cpu.c')
-rw-r--r-- | arch/powerpc/platforms/pseries/hotplug-cpu.c | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/arch/powerpc/platforms/pseries/hotplug-cpu.c b/arch/powerpc/platforms/pseries/hotplug-cpu.c index 62475440fd45..86d2ecacb237 100644 --- a/arch/powerpc/platforms/pseries/hotplug-cpu.c +++ b/arch/powerpc/platforms/pseries/hotplug-cpu.c @@ -88,13 +88,7 @@ void set_default_offline_state(int cpu) static void rtas_stop_self(void) { - static struct rtas_args args = { - .nargs = 0, - .nret = cpu_to_be32(1), - .rets = &args.args[0], - }; - - args.token = cpu_to_be32(rtas_stop_self_token); + static struct rtas_args args; local_irq_disable(); @@ -102,7 +96,8 @@ static void rtas_stop_self(void) printk("cpu %u (hwid %u) Ready to die...\n", smp_processor_id(), hard_smp_processor_id()); - enter_rtas(__pa(&args)); + + rtas_call_unlocked(&args, rtas_stop_self_token, 0, 1, NULL); panic("Alas, I survived.\n"); } |