public inbox for linuxppc-dev@ozlabs.org 
 help / color / mirror / Atom feed
From: Benjamin Herrenschmidt <benh@kernel•crashing.org>
To: Peter Zijlstra <peterz@infradead•org>
Cc: linux-m32r-ja@ml•linux-m32r.org, linux-mips@linux-mips•org,
	linux-ia64@vger•kernel.org, linux-sh@vger•kernel.org,
	"H. Peter Anvin" <hpa@zytor•com>,
	Heiko Carstens <heiko.carstens@de•ibm.com>,
	Paul Mackerras <paulus@samba•org>, Helge Deller <deller@gmx•de>,
	sparclinux@vger•kernel.org,
	Linux-Arch <linux-arch@vger•kernel.org>,
	linux-s390@vger•kernel.org,
	Jesper Nilsson <jesper.nilsson@axis•com>,
	Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix•com>,
	Russell King <linux@arm•linux.org.uk>,
	Hirokazu Takata <takata@linux-m32r•org>,
	x86@kernel•org, "James E.J. Bottomley" <jejb@parisc-linux•org>,
	virtualization@lists•osdl.org, Ingo Molnar <mingo@redhat•com>,
	Matt Turner <mattst88@gmail•com>,
	Fenghua Yu <fenghua.yu@intel•com>,
	Mike Frysinger <vapier@gentoo•org>,
	user-mode-linux-devel@lists•sourceforge.net,
	Konrad Rzeszutek Wilk <konrad.wilk@oracle•com>,
	Jeff Dike <jdike@addtoit•com>,
	Chris Metcalf <cmetcalf@tilera•com>,
	xen-devel@lists•xensource.com, Mikael Starvik <starvik@axis•com>,
	linux-m32r@ml•linux-m32r.org,
	Ivan Kokshaysky <ink@jurassic•park.msu.ru>,
	user-mode-linux-user@lists•sourceforge.net,
	uclinux-dist-devel@blackfin•uclinux.org,
	Thomas Gleixner <tglx@linutronix•de>,
	linux-arm-kernel@lists•infradead.org,
	Richard Henderson <rth@twiddle•net>,
	Tony Luck <tony.luck@intel•com>,
	linux-parisc@vger•kernel.org, linux-cris-kernel@axis•com,
	linux-am33-list@redhat•com, linux-kernel@vger•kernel.org,
	Ralf Baechle <ralf@linux-mips•org>,
	Kyle McMartin <kyle@mcmartin•ca>,
	Paul Mundt <lethal@linux-sh•org>,
	linux-alpha@vger•kernel.org,
	Martin Schwidefsky <schwidefsky@de•ibm.com>,
	linux390@de•ibm.com,
	Koichi Yasutake <yasutake.koichi@jp•panasonic.com>,
	linuxppc-dev@lists•ozlabs.org,
	"David S. Miller" <davem@davemloft•net>
Subject: Re: [PATCH] sched: provide scheduler_ipi() callback in response to smp_send_reschedule()
Date: Wed, 09 Feb 2011 17:14:14 +1100	[thread overview]
Message-ID: <1297232054.14982.346.camel@pasglop> (raw)
In-Reply-To: <1297086859.13327.16.camel@laptop>

On Mon, 2011-02-07 at 14:54 +0100, Peter Zijlstra wrote:
> On Mon, 2011-02-07 at 10:26 +1100, Benjamin Herrenschmidt wrote:
> > You missed:
> > 
> > diff --git a/arch/powerpc/kernel/smp.c b/arch/powerpc/kernel/smp.c
> > index 9813605..467d122 100644
> > --- a/arch/powerpc/kernel/smp.c
> > +++ b/arch/powerpc/kernel/smp.c
> > @@ -98,6 +98,7 @@ void smp_message_recv(int msg)
> >                 break;
> >         case PPC_MSG_RESCHEDULE:
> >                 /* we notice need_resched on exit */
> > +               scheduler_ipi();
> >                 break;
> >         case PPC_MSG_CALL_FUNC_SINGLE:
> >                 generic_smp_call_function_single_interrupt();
> > 
> > Fold that in and add:
> > 
> > Acked-by: Benjamin Herrenschmidt <benh@kernel•crashing.org>
> 
> Thanks Ben!

BTW. I we lurking at some of our CPU hotplug code and I think I cannot
totally guarantee that this won't be called on an offline CPU. If that's
a problem, you may want to add a test for that.

IE. The call function IPIs are normally not going to be sent to an
offlined CPU, and stop_machine should be a good enough fence here, but
we do abuse reschedule for a number of things (including in some case
to wake up a sleeping CPU that was pseudo-offlined :-)

Cheers,
Ben.

  reply	other threads:[~2011-02-09  6:17 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-01-17 11:07 [PATCH] sched: provide scheduler_ipi() callback in response to smp_send_reschedule() Peter Zijlstra
2011-01-17 11:26 ` Russell King - ARM Linux
2011-01-17 11:31   ` Peter Zijlstra
2011-01-17 11:41     ` Peter Zijlstra
2011-01-17 11:57       ` Russell King - ARM Linux
2011-01-17 13:52       ` Chris Metcalf
2011-01-17 13:58       ` Jesper Nilsson
2011-01-17 12:18 ` Martin Schwidefsky
2011-01-17 19:18 ` David Daney
2011-01-17 19:49 ` [uclinux-dist-devel] " Mike Frysinger
2011-01-17 20:16   ` Peter Zijlstra
2011-01-17 20:31 ` Benjamin Herrenschmidt
2011-01-17 20:43   ` Peter Zijlstra
2011-02-06 23:26 ` Benjamin Herrenschmidt
2011-02-07 13:54   ` Peter Zijlstra
2011-02-09  6:14     ` Benjamin Herrenschmidt [this message]
2011-02-09  9:37       ` Peter Zijlstra

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1297232054.14982.346.camel@pasglop \
    --to=benh@kernel$(echo .)crashing.org \
    --cc=cmetcalf@tilera$(echo .)com \
    --cc=davem@davemloft$(echo .)net \
    --cc=deller@gmx$(echo .)de \
    --cc=fenghua.yu@intel$(echo .)com \
    --cc=heiko.carstens@de$(echo .)ibm.com \
    --cc=hpa@zytor$(echo .)com \
    --cc=ink@jurassic$(echo .)park.msu.ru \
    --cc=jdike@addtoit$(echo .)com \
    --cc=jejb@parisc-linux$(echo .)org \
    --cc=jeremy.fitzhardinge@citrix$(echo .)com \
    --cc=jesper.nilsson@axis$(echo .)com \
    --cc=konrad.wilk@oracle$(echo .)com \
    --cc=kyle@mcmartin$(echo .)ca \
    --cc=lethal@linux-sh$(echo .)org \
    --cc=linux-alpha@vger$(echo .)kernel.org \
    --cc=linux-am33-list@redhat$(echo .)com \
    --cc=linux-arch@vger$(echo .)kernel.org \
    --cc=linux-arm-kernel@lists$(echo .)infradead.org \
    --cc=linux-cris-kernel@axis$(echo .)com \
    --cc=linux-ia64@vger$(echo .)kernel.org \
    --cc=linux-kernel@vger$(echo .)kernel.org \
    --cc=linux-m32r-ja@ml$(echo .)linux-m32r.org \
    --cc=linux-m32r@ml$(echo .)linux-m32r.org \
    --cc=linux-mips@linux-mips$(echo .)org \
    --cc=linux-parisc@vger$(echo .)kernel.org \
    --cc=linux-s390@vger$(echo .)kernel.org \
    --cc=linux-sh@vger$(echo .)kernel.org \
    --cc=linux390@de$(echo .)ibm.com \
    --cc=linux@arm$(echo .)linux.org.uk \
    --cc=linuxppc-dev@lists$(echo .)ozlabs.org \
    --cc=mattst88@gmail$(echo .)com \
    --cc=mingo@redhat$(echo .)com \
    --cc=paulus@samba$(echo .)org \
    --cc=peterz@infradead$(echo .)org \
    --cc=ralf@linux-mips$(echo .)org \
    --cc=rth@twiddle$(echo .)net \
    --cc=schwidefsky@de$(echo .)ibm.com \
    --cc=sparclinux@vger$(echo .)kernel.org \
    --cc=starvik@axis$(echo .)com \
    --cc=takata@linux-m32r$(echo .)org \
    --cc=tglx@linutronix$(echo .)de \
    --cc=tony.luck@intel$(echo .)com \
    --cc=uclinux-dist-devel@blackfin$(echo .)uclinux.org \
    --cc=user-mode-linux-devel@lists$(echo .)sourceforge.net \
    --cc=user-mode-linux-user@lists$(echo .)sourceforge.net \
    --cc=vapier@gentoo$(echo .)org \
    --cc=virtualization@lists$(echo .)osdl.org \
    --cc=x86@kernel$(echo .)org \
    --cc=xen-devel@lists$(echo .)xensource.com \
    --cc=yasutake.koichi@jp$(echo .)panasonic.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox