Ad

CVE-2026-89467

NONE EPSS 0.21%
Обновлено 3 октября 2026
Linux
Параметр Значение
Поставщик Linux
Публичный эксплойт Нет

В ядре Linux устранена следующая уязвимость: мощность: питание: qcom_battmgr: исправить использование после освобождения qcom_battmgr_pdr_notify() ставит в очередь Enable_work, когда служба PMIC GLINK появляется, и работник восстанавливает battmgr черезContainer_of() для выдачи запросы на прошивку. Клиент PMIC GLINK остается в списке клиентов до тех пор, пока запускается действие выпуска devres, поэтому уведомление PDR может продолжать стоять в очереди работа, а ожидающий или работающий рабочий процесс может получить доступ к battmgr после devres освобождает его. Сделать Enable_work управляемым устройством с помощью devm_work_autocancel(), зарегистрировать до выделения клиента PMIC GLINK.

Тогда зачистка Девреса сначала освобождает клиента, поэтому дальнейшее уведомление не может поставить работу в очередь, и отменяет работу до того, как battmgr будет освобожден. Эта проблема была обнаружена с помощью собственного инструмента статического анализа.

Показать оригинальное описание (EN)

In the Linux kernel, the following vulnerability has been resolved: power: supply: qcom_battmgr: fix use-after-free qcom_battmgr_pdr_notify() queues enable_work when the PMIC GLINK service comes up, and the worker recovers battmgr through container_of() to issue firmware requests. The PMIC GLINK client stays on the client list until its devres release action runs, so a PDR notification can keep queueing the work, and a pending or running worker can access battmgr after devres frees it. Make enable_work device-managed with devm_work_autocancel(), registered before the PMIC GLINK client is allocated. The devres cleanup then releases the client first, so no further notification can queue the work, and cancels the work before battmgr is freed. This issue was found by an in-house static analysis tool.