CVE-2026-45968

Summary

In the Linux kernel, the following vulnerability has been resolved:

cpuidle: Skip governor when only one idle state is available

On certain platforms (PowerNV systems without a power-mgt DT node), cpuidle may register only a single idle state. In cases where that single state is a polling state (state 0), the ladder governor may incorrectly treat state 1 as the first usable state and pass an out-of-bounds index. This can lead to a NULL enter callback being invoked, ultimately resulting in a system crash.

[ 13.342636] cpuidle-powernv : Only Snooze is available [ 13.351854] Faulting instruction address: 0x00000000 [ 13.376489] NIP [0000000000000000] 0x0 [ 13.378351] LR [c000000001e01974] cpuidle_enter_state+0x2c4/0x668

Fix this by adding a bail-out in cpuidle_select() that returns state 0 directly when state_count <= 1, bypassing the governor and keeping the tick running.

Affected Software

VendorProductVersion RangeStatus
LinuxLinuxdc2251bf98c66db3f4e055b751968f0871037ae4 < a0f7e804edc82e513d1ccb7c95ed8b351522ec81affected
LinuxLinuxdc2251bf98c66db3f4e055b751968f0871037ae4 < 5d103a38e2ae96eca57fd17161bcd29bd4622d1caffected
LinuxLinuxdc2251bf98c66db3f4e055b751968f0871037ae4 < 4da2b897283c39980d6ae09dc1560fcd937879e5affected
LinuxLinuxdc2251bf98c66db3f4e055b751968f0871037ae4 < 5c577ac939bca486cb02069505cfe47a5312ce02affected
LinuxLinuxdc2251bf98c66db3f4e055b751968f0871037ae4 < 8f6833d919bae915ead6c599a53e81e19b32da52affected
LinuxLinuxdc2251bf98c66db3f4e055b751968f0871037ae4 < 63ae78336f40bcd9a44952a7c6bafb9c88a8effdaffected
LinuxLinuxdc2251bf98c66db3f4e055b751968f0871037ae4 < a0724e40a58a0e323c59707edeae5b71d15800dcaffected
LinuxLinuxdc2251bf98c66db3f4e055b751968f0871037ae4 < e5c9ffc6ae1bcdb1062527d611043681ac301acaaffected
LinuxLinux4.14affected
LinuxLinux0 < 4.14unaffected
LinuxLinux5.10.252 <= 5.10.*unaffected
LinuxLinux5.15.202 <= 5.15.*unaffected
LinuxLinux6.1.165 <= 6.1.*unaffected
LinuxLinux6.6.128 <= 6.6.*unaffected
LinuxLinux6.12.75 <= 6.12.*unaffected
LinuxLinux6.18.14 <= 6.18.*unaffected
LinuxLinux6.19.4 <= 6.19.*unaffected
LinuxLinux7.0 <= *unaffected

Weaknesses

References