В ядре Linux устранена следующая уязвимость:
мощность: источник питания: max17040: синхронизировать отмену работы при приостановке
max17040_work() ставит себя в очередь после каждого опроса. cancel_delayed_work()
только отменяет ожидающий экземпляр и не ждет обратного вызова, который
уже работает.
Если система приостанавливает гонки с помощью обратного вызова опроса, обратный вызов может
продолжать получать доступ к указателю уровня топлива и вызывать себя в очередь после приостановки
обратный вызов возвращает.
Используйте cancel_delayed_work_sync(), чтобы гарантировать, что опрос будет остановлен перед
приостановка завершена.
Показать оригинальное описание (EN)
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.