Re: [PATCH v2] cpuidle: Deny idle entry when CPU already have IPI interrupt pending

From: Christian Loehle

Date: Fri Aug 21 2026 - 06:27:27 EST


On 8/21/26 10:28, Daniel Lezcano wrote:
>
> Le 21/08/2026 à 07:03, Maulik Shah (mkshah) a écrit :
>
> [ ... ]
>>> What do we do about the cpuidle stats in that case?
>>> I'm thinking primiarly about last_residency_ns and rejected here.
>>
>> As the idle entry will not happen (call_cpuidle() is not invoked)
>> the stats would also not required to be updated.
> I agree, with the IPI pending it is like the idle task should have not be scheduled, so the idle call is aborted.

AFAICS since the ->select() callback has already run we should
set last_residency_ns == 0, like the need_resched() path in
call_cpuidle() does?
At least menu has a semantic difference in how it decays values
for get_typical_interval() between a UINT_MAX (i.e. invalid)
residency and one it's never seen?