Re: [PATCH 0/2] rcu: Extended quiescent state for adaptive nohz

From: Frederic Weisbecker
Date: Thu Jun 07 2012 - 10:21:15 EST


On Tue, Jun 05, 2012 at 04:46:40PM -0700, Paul E. McKenney wrote:
> On Tue, Jun 05, 2012 at 12:31:00PM +0200, Frederic Weisbecker wrote:
> > On Mon, Jun 04, 2012 at 02:07:09PM -0700, Paul E. McKenney wrote:
> > > On Mon, Jun 04, 2012 at 09:06:22PM +0200, Frederic Weisbecker wrote:
> > > > 2012/6/4 Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx>:
> > > > > On Mon, Jun 04, 2012 at 02:08:26PM +0200, fweisbec@xxxxxxxxx wrote:
> > > > >> From: Frederic Weisbecker <fweisbec@xxxxxxxxx>
> > > > >>
> > > > >> Paul, Ingo,
> > > > >>
> > > > >> This is a rebase of the nohz cpusets RCU APIs on top of Paul's latest
> > > > >> -rcu (rcu/core) branch.
> > > > >>
> > > > >> I have only built tested it yet, I need to do a full rebase of my
> > > > >> tree to test it in practice. But I wanted to show you how it looks
> > > > >> like first.
> > > > >>
> > > > >> I also wonder if we can set that to a tree somewhere. Ingo suggested
> > > > >> to set up a tree on -tip to apply the uncontroversial part of nohz
> > > > >> cpusets patches and iterate from there. I think it would accelerate
> > > > >> everything if we start doing that.
> > > > >
> > > > > It would probably be best to put these two in the -rcu set in order to
> > > > > avoid conflicts with possible further RCU_FAST_NO_HZ work.  I could
> > > > > push this to -tip early, if that would help.
> > > >
> > > > But then these APIs are going to be upstream on 3.6
> > > > Is that ok for you even if they don't have any upstream user?
> > > > We can ifdef it.
> > >
> > > I figured on maintaining a separate rcu/idle topic branch that I would
> > > merge locally for building and testing, but which I would not push
> > > to rcu/next. If Ingo agrees, I can push separately to -tip so that it
> > > does not go upstream until you are ready, at which point I would merge
> > > it into rcu/next.
> > >
> > > Seem reasonable, or would something else work better?
> >
> > Sounds very good!
>
> Here you go:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git rcu/idle

Thanks!

I can see you've implemented a version for TinyRCU. Nohz cpusets only work on
SMP right now because there must be at least one CPU running with the tick
to maintain the timekeeping. I'm pretty confident that one day we'll remove
the jiffies and we'll be able to do the whole timekeeping by using the TSC
or so. There is quite a way before we reach that though.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/