summaryrefslogtreecommitdiffstats
path: root/arch/blackfin/mach-common
diff options
context:
space:
mode:
authorPaul E. McKenney <paulmck@linux.vnet.ibm.com>2015-02-26 23:28:25 +0100
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>2015-03-11 21:22:36 +0100
commita17b4b7487ebcb2aa6d0b859a0981e280d910622 (patch)
treebfbd7a3234e42c07f4fe5e73e8b5b3ba15d2c225 /arch/blackfin/mach-common
parentx86: Use common outgoing-CPU-notification code (diff)
downloadlinux-a17b4b7487ebcb2aa6d0b859a0981e280d910622.tar.xz
linux-a17b4b7487ebcb2aa6d0b859a0981e280d910622.zip
blackfin: Use common outgoing-CPU-notification code
This commit removes the open-coded CPU-offline notification with new common code. This change avoids calling scheduler code using RCU from an offline CPU that RCU is ignoring. This commit is compatible with the existing code in not checking for timeout during a prior offline for a given CPU. Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com> Cc: Steven Miao <realmz6@gmail.com> Cc: <adi-buildroot-devel@lists.sourceforge.net>
Diffstat (limited to 'arch/blackfin/mach-common')
-rw-r--r--arch/blackfin/mach-common/smp.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/arch/blackfin/mach-common/smp.c b/arch/blackfin/mach-common/smp.c
index 8ad3e90cc8fc..1c7259597395 100644
--- a/arch/blackfin/mach-common/smp.c
+++ b/arch/blackfin/mach-common/smp.c
@@ -413,16 +413,14 @@ int __cpu_disable(void)
return 0;
}
-static DECLARE_COMPLETION(cpu_killed);
-
int __cpu_die(unsigned int cpu)
{
- return wait_for_completion_timeout(&cpu_killed, 5000);
+ return cpu_wait_death(cpu, 5);
}
void cpu_die(void)
{
- complete(&cpu_killed);
+ (void)cpu_report_death();
atomic_dec(&init_mm.mm_users);
atomic_dec(&init_mm.mm_count);