Re: [PATCH 02/32 RESEND] nohz: Drop ts->idle_active

Peter Zijlstra
2011-08-29T14:24:26Z

On Mon, 2011-08-15 at 17:51 +0200, Frederic Weisbecker wrote:
> ts->idle_active is used to know if we want to account the idle sleep
> time. But ts->inidle is enough to check that.
>
While possibly true, its not immediately obvious and no hints are
supplied. For example: tick_check_nohz() would disable ->idle_active..
where is this mirrored in the ->inidle state.

Also, tick_nohz_stop_sched_tick() has this comment:

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

Which suggest the ->inidle state doesn't accurately reflect things.

This is all rather hairy code, such changes really want more in terms of
explanation.