CVE-2026-64409 in Linux
Сводка
по VulDB • 27.07.2026
В ядре Linux устранена следующая уязвимость:
Bluetooth: btmtksdio — исправлен бесконечный цикл в функции btmtksdio_txrx_work()
Иногда наблюдается зависание задачи btmtksdio_flush():
INFO: task kworker/u17:0:189 blocked for more than 122 seconds. __cancel_work_timer+0x3f4/0x460 cancel_work_sync+0x1c/0x2c btmtksdio_flush+0x2c/0x40 hci_dev_open_sync+0x10c4/0x2190 [..]
Проблема заключается в некорректном использовании функции time_is_before_jiffies() внутри btmtksdio_txrx_work(). Ожидается, что цикл btmtksdio_txrx_work() завершится, если он выполняется дольше 5*HZ. Однако проверка тайм-аута выполнена ошибочно: выражение time_is_before_jiffies(old_jiffies + 5*HZ) возвращает истину (true), когда old_jiffies + 5*HZ находится в прошлом, то есть при наступлении тайм-аута. Использование логического ИЛИ с time_is_before_jiffies(txrx_timeout) означает следующее: - до истечения 5-секундного тайм-аута условие имеет вид `int_status || false`, поэтому цикл продолжается, пока имеются ожидающие прерывания; - после истечения 5-секундного тайм-аута условие становится `int_status || true`, что всегда равно истине (true).
Когда цикл становится бесконечным, btmtksdio_txrx_work() никогда не завершается и не освобождает SDIO хост.
Исправлено условие завершения цикла для корректного обеспечения 5*HZ тайм-аута.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.