> @@ -8683,6 +8692,10 @@ static void nohz_balancer_kick(void) > > if (test_and_set_bit(NOHZ_BALANCE_KICK, nohz_flags(ilb_cpu))) > return; > + > + if (only_update) > + set_bit(NOHZ_STATS_KICK, nohz_flags(ilb_cpu));
Should there be an "else clear_bit(NOHZ_STATS_KICK, nohz_flags(ilb_cpu));" ? Seems like any time this is called as !only_update, we should stop inhibiting rebalance. In fact, we should perhaps go a little further so that an only_update never inhibits rebalance from a concurrent !only_update.