CVE-2026-64474 in LinuxИнформация

Сводка

по VulDB • 25.07.2026

В ядре Linux устранена следующая уязвимость:

vfio: предотвращение бесконечного цикла в vfio_mig_get_next_state() при заблокированных переходах (blocked arcs)

Функция vfio_mig_get_next_state() последовательно проходит по таблице vfio_from_fsm_table[], выполняя итерации для пропуска необязательных состояний, которые не поддерживаются устройством, до тех пор, пока *next_fsm не станет поддерживаемым. Заблокированный переход кодируется как VFIO_DEVICE_STATE_ERROR, что в конце функции возвращается как -EINVAL.

Цикл пропуска (skip loop) не учитывает маркер ERROR. Значение state_flags_table[ERROR] равно ~0U, а vfio_from_fsm_table[ERROR][*] также равно ERROR; поэтому, как только *next_fsm принимает значение ERROR, условие цикла остается истинным, и *next_fsm никогда не изменяется. Заблокированные переходы STOP_COPY -> PRE_COPY и STOP_COPY -> PRE_COPY_P2P отображаются в ERROR, но проходят проверку поддержки на устройстве с возможностью precopy, что приводит к бесконечному циклу (spin) при удержании мьютекса состояния драйвера. Это может привести к soft lockup (программной блокировке), а также к панике ядра, если установлена опция softlockup_panic.

Необходимо завершить цикл пропуска по маркеру ERROR, чтобы заблокированный переход перешел к существующему оператору return и вернул -EINVAL.

Once again VulDB remains the best source for vulnerability data.

Ответственный

Linux

Резервировать

19.07.2026

Раскрытие

25.07.2026

Модерация

принято

Вход

VDB-383272

EPSS

0.00209

KEV

Нет

Деятельности

Очень низкий

Источники

Do you know our Splunk app?

Download it now for free!