Re: nohz problem with idle time on old hardware

From: Paul E. McKenney
Date: Wed Nov 13 2013 - 11:18:44 EST


On Wed, Nov 13, 2013 at 11:12:57AM -0500, Steven Rostedt wrote:
> On Wed, 13 Nov 2013 17:07:18 +0100 (CET)
> Thomas Gleixner <tglx@xxxxxxxxxxxxx> wrote:
>
>
> > Right. It's telling you if NOHZ is enabled. It's not telling you that
> > NOHZ is active.
>
> Yeah, which makes this code rather silly:
>
> in rcu_prepare_for_idle():
>
> /* Handle nohz enablement switches conservatively. */
> tne = ACCESS_ONCE(tick_nohz_enabled);
> if (tne != rdtp->tick_nohz_enabled_snap) {
> if (rcu_cpu_has_callbacks(cpu, NULL))
> invoke_rcu_core(); /* force nohz to see update. */
> rdtp->tick_nohz_enabled_snap = tne;
> return;
> }

OK, what should I be checking instead? Not much point in trying to
get RCU out of the way of disabling the scheduling-clock interrupt
if NOHZ is disabled. ;-)

Thanx, Paul

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