CVE-2026-89461

Summary

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

power: supply: max17040: synchronize work cancellation on suspend

max17040_work() requeues itself after every poll. cancel_delayed_work() only cancels a pending instance and does not wait for a callback that is already running.

If system suspend races with the polling callback, the callback can continue accessing the fuel gauge and requeue itself after the suspend callback returns.

Use cancel_delayed_work_sync() to ensure polling is quiesced before suspend completes.

Affected Software

VendorProductVersion RangeStatus
LinuxLinuxc6f4a42de60b981dd210de01cd3e575835e3158e < 6bd453e328a0325f838c3bf64d4609c6c1866ed7affected
LinuxLinuxc6f4a42de60b981dd210de01cd3e575835e3158e < 7a9ec6707b545b2a0b35942c8b68d975cb901f77affected
LinuxLinuxc6f4a42de60b981dd210de01cd3e575835e3158e < dc946222e4b5bdb4e92bc3a5a5e8fc4ddac34ec0affected
LinuxLinuxc6f4a42de60b981dd210de01cd3e575835e3158e < 23783db5642a714f0547c5b5b0c9cdbb1be7b084affected
LinuxLinuxc6f4a42de60b981dd210de01cd3e575835e3158e < 5a863417fb9a1034ab1cfe4fa0de46ce1f95f3ecaffected
LinuxLinuxc6f4a42de60b981dd210de01cd3e575835e3158e < aad7247bd35ad44af90a5e8974cdff614235b497affected
LinuxLinuxc6f4a42de60b981dd210de01cd3e575835e3158e < 36e6ce0f402f965328b27fd31ac793110e8a0c39affected
LinuxLinuxc6f4a42de60b981dd210de01cd3e575835e3158e < 86a3a8a926aa5969c329d1df2d3259f189961bbcaffected
LinuxLinux2.6.31affected
LinuxLinux0 < 2.6.31unaffected
LinuxLinux5.10.270 <= 5.10.*unaffected
LinuxLinux5.15.221 <= 5.15.*unaffected
LinuxLinux6.1.188 <= 6.1.*unaffected
LinuxLinux6.6.157 <= 6.6.*unaffected
LinuxLinux6.12.109 <= 6.12.*unaffected
LinuxLinux6.18.50 <= 6.18.*unaffected
LinuxLinux7.2.4 <= 7.2.*unaffected
LinuxLinux7.3-rc1 <= *unaffected

Weaknesses

References