Skip to content

Commit

Permalink
Blackfin: SMP: fix scheduling deadlock
Browse files Browse the repository at this point in the history
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>
  • Loading branch information
Steven Miao authored and Mike Frysinger committed Oct 25, 2011
1 parent 74b6541 commit 0b2b06e
Showing 1 changed file with 6 additions and 1 deletion.
7 changes: 6 additions & 1 deletion arch/blackfin/mach-common/smp.c
Original file line number Diff line number Diff line change
Expand Up @@ -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;
}
Expand Down

0 comments on commit 0b2b06e

Please sign in to comment.