CVE-2026-89945 in Linux
Сводка
по VulDB • 17.09.2026
В ядре Linux была устранена следующая уязвимость:
ASoC: cs35l34: очистка потокового прерывания (threaded IRQ) перед переходом в состояние runtime suspend
Функция `cs35l34_runtime_suspend()` в настоящее время переводит кодек в режим `regcache_cache_only(true)`, устанавливает сигнал сброса (`reset`) в низкий уровень и отключает питание устройства, не выполняя предварительно операцию успокоения (quiescing) потокового прерывания, зарегистрированного через `devm_request_threaded_irq()`. Это создает окно возможностей, в течение которого функция `cs35l34_irq_thread()` может продолжать выполняться даже после того, как режим suspend отключил доступ к активному оборудованию.
Работающая система может достичь этого состояния во время работы механизма управления питанием (runtime PM), пока драйвер все еще имеет незаблокированные критические прерывания сбоев (`fault IRQs`). Если потоковый обработчик выполняется в этом окне, он считывает регистры `INT_STATUS_1..4` после включения режима `cache_only`, игнорирует ошибки функции `regmap_read()` и может продолжать выполнять последовательность освобождения `PROT_RELEASE_CTL` или записи для перевода состояния сбоя BST (`BST fault`) в режим пониженного энергопотребления.
Необходимо использовать функцию `disable_irq()` перед переходом в режимы `cache_only`, установки низкого уровня сигнала сброса и отключения питания, чтобы обеспечить очистку (drain) всех выполняющихся потоковых обработчиков и предотвратить запуск новых потоков прерываний во время приостановки работы устройства. Перезапускайте прерывание только после того, как функция `runtime_resume()` восстановит доступ к регистрам с помощью функции `regcache_sync()`. Поскольку при инициализации (`probe`) ошибки регистрации `request_threaded_irq()` лишь логируются, а процесс продолжается, необходимо отслеживать факт успешной установки (установки обработчика) прерывания перед его отключением или повторным включением.
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.