CVE-2026-45968
N/A
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
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | dc2251bf98c66db3f4e055b751968f0871037ae4 < a0f7e804edc82e513d1ccb7c95ed8b351522ec81 | affected |
| Linux | Linux | dc2251bf98c66db3f4e055b751968f0871037ae4 < 5d103a38e2ae96eca57fd17161bcd29bd4622d1c | affected |
| Linux | Linux | dc2251bf98c66db3f4e055b751968f0871037ae4 < 4da2b897283c39980d6ae09dc1560fcd937879e5 | affected |
| Linux | Linux | dc2251bf98c66db3f4e055b751968f0871037ae4 < 5c577ac939bca486cb02069505cfe47a5312ce02 | affected |
| Linux | Linux | dc2251bf98c66db3f4e055b751968f0871037ae4 < 8f6833d919bae915ead6c599a53e81e19b32da52 | affected |
| Linux | Linux | dc2251bf98c66db3f4e055b751968f0871037ae4 < 63ae78336f40bcd9a44952a7c6bafb9c88a8effd | affected |
| Linux | Linux | dc2251bf98c66db3f4e055b751968f0871037ae4 < a0724e40a58a0e323c59707edeae5b71d15800dc | affected |
| Linux | Linux | dc2251bf98c66db3f4e055b751968f0871037ae4 < e5c9ffc6ae1bcdb1062527d611043681ac301aca | affected |
| Linux | Linux | 4.14 | affected |
| Linux | Linux | 0 < 4.14 | unaffected |
| Linux | Linux | 5.10.252 <= 5.10.* | unaffected |
| Linux | Linux | 5.15.202 <= 5.15.* | unaffected |
| Linux | Linux | 6.1.165 <= 6.1.* | unaffected |
| Linux | Linux | 6.6.128 <= 6.6.* | unaffected |
| Linux | Linux | 6.12.75 <= 6.12.* | unaffected |
| Linux | Linux | 6.18.14 <= 6.18.* | unaffected |
| Linux | Linux | 6.19.4 <= 6.19.* | unaffected |
| Linux | Linux | 7.0 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/a0f7e804edc82e513d1ccb7c95ed8b351522ec81
- https://git.kernel.org/stable/c/5d103a38e2ae96eca57fd17161bcd29bd4622d1c
- https://git.kernel.org/stable/c/4da2b897283c39980d6ae09dc1560fcd937879e5
- https://git.kernel.org/stable/c/5c577ac939bca486cb02069505cfe47a5312ce02
- https://git.kernel.org/stable/c/8f6833d919bae915ead6c599a53e81e19b32da52
- https://git.kernel.org/stable/c/63ae78336f40bcd9a44952a7c6bafb9c88a8effd
- https://git.kernel.org/stable/c/a0724e40a58a0e323c59707edeae5b71d15800dc
- https://git.kernel.org/stable/c/e5c9ffc6ae1bcdb1062527d611043681ac301aca
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.