linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/2] Fix merge problem between sparc32 IPI patches and schedule_ipi() callback
@ 2011-05-20 14:01 Daniel Hellstrom
  2011-05-20 14:01 ` [PATCH 2/2] SCHED_TTWU_QUEUE is not longer needed since sparc32 now implements IPI Daniel Hellstrom
  2011-05-20 20:13 ` [PATCH 1/2] Fix merge problem between sparc32 IPI patches and schedule_ipi() callback David Miller
  0 siblings, 2 replies; 3+ messages in thread
From: Daniel Hellstrom @ 2011-05-20 14:01 UTC (permalink / raw)
  To: davem; +Cc: sparclinux, sfr, peterz, tglx, mingo, hpa, linux-next, linux-kernel

Fixes a merge conflict in arch/sparc/kernel/smp_32.c between commit
d6d048192b1d ("sparc32: implement SMP IPIs using the generic functions")
from the sparc tree and commit 184748cc50b2 ("sched: Provide
scheduler_ipi() callback in response to smp_send_reschedule()").

The patch adds a call to scheduler_ipi() from the resched IPI handler in
sparc32.

Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
---
 arch/sparc/kernel/smp_32.c |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/arch/sparc/kernel/smp_32.c b/arch/sparc/kernel/smp_32.c
index 41102c5..d5b3958 100644
--- a/arch/sparc/kernel/smp_32.c
+++ b/arch/sparc/kernel/smp_32.c
@@ -156,11 +156,11 @@ void arch_send_call_function_ipi_mask(const struct cpumask *mask)
 
 void smp_resched_interrupt(void)
 {
+	irq_enter();
+	scheduler_ipi();
 	local_cpu_data().irq_resched_count++;
-	/*
-	 * do nothing, since it all was about calling re-schedule
-	 * routine called by interrupt return code.
-	 */
+	irq_exit();
+	/* re-schedule routine called by interrupt return code. */
 }
 
 void smp_call_function_single_interrupt(void)
-- 
1.6.0.3


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [PATCH 2/2] SCHED_TTWU_QUEUE is not longer needed since sparc32 now implements IPI
  2011-05-20 14:01 [PATCH 1/2] Fix merge problem between sparc32 IPI patches and schedule_ipi() callback Daniel Hellstrom
@ 2011-05-20 14:01 ` Daniel Hellstrom
  2011-05-20 20:13 ` [PATCH 1/2] Fix merge problem between sparc32 IPI patches and schedule_ipi() callback David Miller
  1 sibling, 0 replies; 3+ messages in thread
From: Daniel Hellstrom @ 2011-05-20 14:01 UTC (permalink / raw)
  To: davem; +Cc: sparclinux, sfr, peterz, tglx, mingo, hpa, linux-next, linux-kernel

Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
Reported-by: Peter Zijlstra <peterz@infradead.org>
Acked-by: Peter Zijlstra <peterz@infradead.org>
---
 init/Kconfig   |    5 -----
 kernel/sched.c |    2 +-
 2 files changed, 1 insertions(+), 6 deletions(-)

diff --git a/init/Kconfig b/init/Kconfig
index df64627..a66b656 100644
--- a/init/Kconfig
+++ b/init/Kconfig
@@ -827,11 +827,6 @@ config SCHED_AUTOGROUP
 	  desktop applications.  Task group autogeneration is currently based
 	  upon task session.
 
-config SCHED_TTWU_QUEUE
-	bool
-	depends on !SPARC32
-	default y
-
 config MM_OWNER
 	bool
 
diff --git a/kernel/sched.c b/kernel/sched.c
index c62acf4..0516af4 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
@@ -2564,7 +2564,7 @@ static void ttwu_queue(struct task_struct *p, int cpu)
 {
 	struct rq *rq = cpu_rq(cpu);
 
-#if defined(CONFIG_SMP) && defined(CONFIG_SCHED_TTWU_QUEUE)
+#if defined(CONFIG_SMP)
 	if (sched_feat(TTWU_QUEUE) && cpu != smp_processor_id()) {
 		ttwu_queue_remote(p, cpu);
 		return;
-- 
1.6.0.3


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH 1/2] Fix merge problem between sparc32 IPI patches and schedule_ipi() callback
  2011-05-20 14:01 [PATCH 1/2] Fix merge problem between sparc32 IPI patches and schedule_ipi() callback Daniel Hellstrom
  2011-05-20 14:01 ` [PATCH 2/2] SCHED_TTWU_QUEUE is not longer needed since sparc32 now implements IPI Daniel Hellstrom
@ 2011-05-20 20:13 ` David Miller
  1 sibling, 0 replies; 3+ messages in thread
From: David Miller @ 2011-05-20 20:13 UTC (permalink / raw)
  To: daniel
  Cc: sparclinux, sfr, peterz, tglx, mingo, hpa, linux-next, linux-kernel

From: Daniel Hellstrom <daniel@gaisler.com>
Date: Fri, 20 May 2011 16:01:09 +0200

> Fixes a merge conflict in arch/sparc/kernel/smp_32.c between commit
> d6d048192b1d ("sparc32: implement SMP IPIs using the generic functions")
> from the sparc tree and commit 184748cc50b2 ("sched: Provide
> scheduler_ipi() callback in response to smp_send_reschedule()").
> 
> The patch adds a call to scheduler_ipi() from the resched IPI handler in
> sparc32.
> 
> Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>

What I did to handle this was merge in enough of the upstream commit
by Peter such that both of these patches apply, via:

git merge --no-commit 317f394160e9beb97d19a84c39b7e5eb3d7815a8

then I added patch #1 into the merge commit.

Next, I applied patch #2 afterwards.

So we should be all set when I push this out to Linus, thanks!

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2011-05-20 20:15 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-05-20 14:01 [PATCH 1/2] Fix merge problem between sparc32 IPI patches and schedule_ipi() callback Daniel Hellstrom
2011-05-20 14:01 ` [PATCH 2/2] SCHED_TTWU_QUEUE is not longer needed since sparc32 now implements IPI Daniel Hellstrom
2011-05-20 20:13 ` [PATCH 1/2] Fix merge problem between sparc32 IPI patches and schedule_ipi() callback David Miller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).