Re: [PATCH] sched: provide scheduler_ipi() callback in response to smp_send_reschedule()

From
Peter Zijlstra <peterz@infradead.org>
Date
2011-01-17 11:31:24
Also in
linux-alpha, linux-arch, linux-arm-kernel, linux-mips, linux-um, linuxppc-dev, xen-devel
Reply to
Russell King - ARM Linux, 2011-01-17
On Mon, 2011-01-17 at 11:26 +0000, Russell King - ARM Linux wrote:
On Mon, Jan 17, 2011 at 12:07:13PM +0100, Peter Zijlstra wrote:
quoted
diff --git a/arch/alpha/kernel/smp.c b/arch/alpha/kernel/smp.c
index 42aa078..c4a570b 100644
--- a/arch/alpha/kernel/smp.c
+++ b/arch/alpha/kernel/smp.c
@@ -587,6 +587,7 @@ handle_ipi(struct pt_regs *regs)
 		case IPI_RESCHEDULE:
 			/* Reschedule callback.  Everything to be done
 			   is done by the interrupt return path.  */
+			scheduler_ipi();
 			break;
 
 		case IPI_CALL_FUNC:
diff --git a/arch/arm/kernel/smp.c b/arch/arm/kernel/smp.c
index 9066473..ffde790 100644
--- a/arch/arm/kernel/smp.c
+++ b/arch/arm/kernel/smp.c
@@ -579,6 +579,7 @@ asmlinkage void __exception do_IPI(struct pt_regs *regs)
 				 * nothing more to do - eveything is
 				 * done on the interrupt return path
 				 */
+				scheduler_ipi();
Maybe remove the comment "everything is done on the interrupt return path"
as with this function call, that is no longer the case.

Looks like the same is true for Alpha as well?
Right, will do, thanks! It looks like I've somewhat inconsistent with
that.
Thread (7 messages) 7 messages, 5 authors, last reply 2011-01-24
Keyboard shortcuts
hback out one level
jnext message in thread / next series-diff position
kprevious message in thread / previous series-diff position
ldrill in
Escclose help / fold thread tree
?toggle this help