Re: [PATCH v9 10/10] cpuidle: menu: Avoid selecting shallow states with stopped tick

From: Rafael J. Wysocki
Date: Thu Apr 05 2018 - 09:49:39 EST


On Thu, Apr 5, 2018 at 2:47 PM, Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote:
> On Wed, Apr 04, 2018 at 10:50:36AM +0200, Rafael J. Wysocki wrote:
>> + if (tick_nohz_tick_stopped()) {
>> + /*
>> + * If the tick is already stopped, the cost of possible short
>> + * idle duration misprediction is much higher, because the CPU
>> + * may be stuck in a shallow idle state for a long time as a
>> + * result of it. In that case say we might mispredict and try
>> + * to force the CPU into a state for which we would have stopped
>> + * the tick, unless the tick timer is going to expire really
>> + * soon anyway.
>
> Wait what; the tick was stopped, therefore it _cannot_ expire soon.
>
> *confused*
>
> Did you mean s/tick/a/ ?

Yeah, that should be "a timer".