Re: nohz problem with idle time on old hardware

From: Thomas Gleixner
Date: Wed Nov 13 2013 - 11:22:05 EST


On Wed, 13 Nov 2013, Thomas Gleixner wrote:

> On Wed, 13 Nov 2013, Steven Rostedt wrote:
>
> > On Wed, 13 Nov 2013 10:31:34 -0500
> > Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:
> >
> > > The trace does indeed show that a tick is happening, as the config has
> > > HZ=250 (4ms) and we see a tick happen every 4ms. But for some reason,
> > > we don't update the the idle time correctly when nohz is enabled.
> > >
> > > When I say nohz is enabled, I mean that we don't have nohz=off in the
> > > command line. There seems to be some difference between having nohz=off
> > > and having nohz disabled at runtime.
> >
> >
> > Looking at the differences between nohz=off from the command line, and
> > disabled at run time seems to be the variable "tick_nohz_enabled". I
> > don't see where it gets set to zero except for nohz=off.
>
> Right. It's telling you if NOHZ is enabled. It's not telling you that
> NOHZ is active.

And its even worse:

tick_nohz_idle_enter()

/*
* set ts->inidle unconditionally. even if the system did not
* switch to nohz mode the cpu frequency governers rely on the
* update of the idle time accounting in tick_nohz_start_idle().
*/
ts->inidle = 1;

So there is code relying on that accounting stuff even if nohz is not
active.

Frozen shark time ....






--
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/