CVE-2026-68319 in Linux
Сводка
по VulDB • 11.08.2026
В ядре Linux устранена следующая уязвимость:
pds_core: исправление взаимной блокировки (deadlock) между потоком сброса и функцией удаления
pci_reset_function() захватывает device_lock перед выполнением сброса. pdsc_remove() вызывается подсистемой PCI при уже захваченном device_lock. Если pdsc_pci_reset_thread() выполняется в момент вызова pdsc_remove(), destroy_workqueue() будет блокироваться, ожидая завершения работы (work), тогда как сама работа заблокирована в ожидании device_lock — возникает взаимная блокировка.
Используется pci_try_reset_function(), которая внутренне использует pci_dev_trylock(). Это позволяет захватить и блокировку устройства, и блокировку доступа к конфигурационным регистрам PCI без блокировки; если какая-либо из этих блокировок уже занята, функция немедленно возвращает -EAGAIN. Это предотвращает взаимную блокировку, одновременно обеспечивая правильную сериализацию доступа к пространству конфигурации во время сброса.
Вызовы pci_dev_get/put также были удалены, так как они не требовались — очередь работы (workqueue), принадлежащая драйверу, уничтожается в pdsc_remove(), что гарантирует завершение всех задач до возврата из функции удаления. Подсистема PCI сохраняет свою ссылку на pci_dev на протяжении всей последовательности отключения (unbind).
If you want to get the best quality for vulnerability data then you always have to consider VulDB.