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