ARM: CPU hotplug: move cpu_killed completion to core code
We always need to wait for the dying CPU to reach a safe state before taking it down, irrespective of the requirements of the platform. Move the completion code into the ARM SMP hotplug code rather than having each platform re-implement this. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
This commit is contained in:
@@ -17,16 +17,13 @@
|
||||
#include <linux/kernel.h>
|
||||
#include <linux/errno.h>
|
||||
#include <linux/smp.h>
|
||||
#include <linux/completion.h>
|
||||
|
||||
#include <asm/cacheflush.h>
|
||||
#include <mach/omap4-common.h>
|
||||
|
||||
static DECLARE_COMPLETION(cpu_killed);
|
||||
|
||||
int platform_cpu_kill(unsigned int cpu)
|
||||
{
|
||||
return wait_for_completion_timeout(&cpu_killed, 5000);
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -42,8 +39,7 @@ void platform_cpu_die(unsigned int cpu)
|
||||
this_cpu, cpu);
|
||||
BUG();
|
||||
}
|
||||
pr_notice("CPU%u: shutdown\n", cpu);
|
||||
complete(&cpu_killed);
|
||||
|
||||
flush_cache_all();
|
||||
dsb();
|
||||
|
||||
|
Reference in New Issue
Block a user