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.
https://git.kernel.org/stable/c/dc946222e4b5bdb4e92bc3a5a5e8fc4ddac34ec0
https://git.kernel.org/stable/c/aad7247bd35ad44af90a5e8974cdff614235b497
https://git.kernel.org/stable/c/86a3a8a926aa5969c329d1df2d3259f189961bbc
https://git.kernel.org/stable/c/7a9ec6707b545b2a0b35942c8b68d975cb901f77
https://git.kernel.org/stable/c/6bd453e328a0325f838c3bf64d4609c6c1866ed7
https://git.kernel.org/stable/c/5a863417fb9a1034ab1cfe4fa0de46ce1f95f3ec
https://git.kernel.org/stable/c/36e6ce0f402f965328b27fd31ac793110e8a0c39
https://git.kernel.org/stable/c/23783db5642a714f0547c5b5b0c9cdbb1be7b084