Re: [patch 13/20] timer: Switch to a non cascading wheel

From: Paul E. McKenney
Date: Thu Jun 16 2016 - 20:41:00 EST


On Thu, Jun 16, 2016 at 08:14:02PM +0200, Peter Zijlstra wrote:
> On Thu, Jun 16, 2016 at 09:02:15AM -0700, Paul E. McKenney wrote:
> > > 2) When we do that right, we can make the tick frequency a command line option
> > > and just have a compiled in default.
> >
> > As long as there is something that tells RCU what the tick frequency
> > actually is at runtime, this should not be a problem. For example,
> > in rcu_implicit_dynticks_qs(), the following:
> >
> > rdp->rsp->jiffies_resched += 5;
> >
> > Would instead need to be something like:
> >
> > rdp->rsp->jiffies_resched += 5 * jiffies_per_tick;
> >
> > Changing tick frequency at runtime would be a bit more tricky, as it would
> > be tough to avoid some oddball false positives during the transition.
>
> So the 'fun' part will be frequencies with non integer factors of 1000.
> Like say HZ=300. For that we'll have to keep jiffies_remainder, and
> add an extra jiffy every time that rolls over.
>
> That would make your case slightly more interesting than you really
> want I suspect.

My particular case is not that sensitive, so 1000/300 would be plenty
accurate.

Thanx, Paul