Re: [PATCH] sched/idle: Stop the tick when no cpuidle driver is available
From: Florian Fainelli
Date: Thu Nov 05 2026 - 18:59:33 EST
On 7/28/26 09:37, Christian Loehle wrote:
Commit f4c31b07b136 ("sched: idle: Consolidate the handling of two
special cases") changed the no-cpuidle-driver path to use the previous
tick wakeup heuristic.
Oracle reported a substantial sysbench regression on small OCI VM shapes
with no cpuidle driver available. Reverting the commit recovered the lost
performance.
Restore the previous tick handling for the no-driver case while retaining
the heuristic for the single-state cpuidle case.
Fixes: f4c31b07b136 ("sched: idle: Consolidate the handling of two special cases")
Reported-by: Joseph Salisbury <joseph.salisbury@xxxxxxxxxx>
Closes: https://lore.kernel.org/all/096b42fa-107f-450d-b3b1-03bcad3f1e04@xxxxxxxxxx/
Signed-off-by: Christian Loehle <christian.loehle@xxxxxxx>
FWIW:
Tested-by: Florian Fainelli <florian.fainelli@xxxxxxxxxxxx>
We also hit this issue after it got back ported into stable trees (5.15, 6.1, etc.) and this is seen during a network throughput test. This is on an ARM 32-bit platform with:
# CONFIG_ARM_CPUIDLE is not set
# CONFIG_ARM_PSCI_CPUIDLE is not set
Not that we could not fix that, but this platform really only has WFI has the idle state and it looks like other people are impacted anyway.
--
Florian