On Tuesday, March 6, 2018 12:27:01 AM CET Rik van Riel wrote:
> On Sun, 2018-03-04 at 23:28 +0100, Rafael J. Wysocki wrote:
> > 
> > +++ linux-pm/kernel/sched/idle.c
> > @@ -188,13 +188,14 @@ static void cpuidle_idle_call(void)
> >     } else {
> >             unsigned int duration_us;
> >  
> > -           tick_nohz_idle_go_idle(true);
> > -           rcu_idle_enter();
> > -
> >             /*
> >              * Ask the cpuidle framework to choose a convenient
> > idle state.
> >              */
> >             next_state = cpuidle_select(drv, dev, &duration_us);
> > +
> > +           tick_nohz_idle_go_idle(duration_us > USEC_PER_SEC /
> > HZ);
> > +           rcu_idle_enter();
> > +
> >             entered_state = call_cpuidle(drv, dev, next_state);
> 
> When the expected idle period is short enough
> that the timer is not stopped, does it make
> sense to still call rcu_idle_enter?
> 
> Should rcu_idle_enter also be conditional on
> the expected idle period?

Well, that would be the next step. :-)

Reply via email to