1
0
Fork 0

Blackfin: SMP: fix scheduling deadlock

Make sure our smp_send_reschedule() implementation matches the
scheduler_ipi() callback so that it can kick the idle cpu.

Signed-off-by: Steven Miao <realmz6@gmail.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
hifive-unleashed-5.1
Steven Miao 2011-08-02 17:50:41 +08:00 committed by Mike Frysinger
parent 74b654176a
commit 0b2b06efd8
1 changed files with 6 additions and 1 deletions

View File

@ -295,10 +295,15 @@ EXPORT_SYMBOL_GPL(smp_call_function_single);
void smp_send_reschedule(int cpu)
{
cpumask_t callmap;
/* simply trigger an ipi */
if (cpu_is_offline(cpu))
return;
platform_send_ipi_cpu(cpu, IRQ_SUPPLE_0);
cpumask_clear(&callmap);
cpumask_set_cpu(cpu, &callmap);
smp_send_message(callmap, BFIN_IPI_RESCHEDULE, NULL, NULL, 0);
return;
}