From mboxrd@z Thu Jan 1 00:00:00 1970 From: Martin Schwidefsky Subject: Re: [PATCH] sched: provide scheduler_ipi() callback in response to smp_send_reschedule() Date: Mon, 17 Jan 2011 13:18:23 +0100 Message-ID: <20110117131823.410e515c@mschwide.boeblingen.de.ibm.com> References: <1295262433.30950.53.camel@laptop> Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1295262433.30950.53.camel@laptop> Sender: linux-mips-bounce@linux-mips.org Errors-to: linux-mips-bounce@linux-mips.org List-Id: Content-Type: text/plain; charset="us-ascii" To: Peter Zijlstra Cc: Richard Henderson , Ivan Kokshaysky , Matt Turner , Russell King , Mike Frysinger , Mikael Starvik , Jesper Nilsson , Tony Luck , Fenghua Yu , Hirokazu Takata , Ralf Baechle , David Howells , Koichi Yasutake , Kyle McMartin , Helge Deller , "James E.J. Bottomley" , Benjamin Herrenschmidt , Paul Mackerras , Heiko Carstens , On Mon, 17 Jan 2011 12:07:13 +0100 Peter Zijlstra wrote: > I visited existing smp_send_reschedule() implementations and tried to > add a call to scheduler_ipi() in their handler part, but esp. for MIPS > I'm not quite sure I actually got all of them. > > diff --git a/arch/s390/kernel/smp.c b/arch/s390/kernel/smp.c > index 94cf510..61789e8 100644 > --- a/arch/s390/kernel/smp.c > +++ b/arch/s390/kernel/smp.c > @@ -163,12 +163,12 @@ static void do_ext_call_interrupt(unsigned int ext_int_code, > > /* > * handle bit signal external calls > - * > - * For the ec_schedule signal we have to do nothing. All the work > - * is done automatically when we return from the interrupt. > */ > bits = xchg(&S390_lowcore.ext_call_fast, 0); > > + if (test_bit(ec_schedule, &bits)) > + scheduler_ipi(); > + > if (test_bit(ec_call_function, &bits)) > generic_smp_call_function_interrupt(); > s390 bits are fine. -- blue skies, Martin. "Reality continues to ruin my life." - Calvin.