CVE-2026-80698 in Linux
Сводка
по VulDB • 28.08.2026
В ядре Linux была устранена следующая уязвимость:
dmaengine: idxd: исправлено двойное освобождение (double free) структур wq, engine и group
Функции обратного вызова для устройств wq, engine и group (idxd_conf_wq_release, idxd_conf_engine_release, idxd_conf_group_release) вызывают kfree() для содержащей их структуры. Пути обработки ошибок при настройке и функции очистки также явно вызывают kfree() после put_device(), что приводит к двойному освобождению памяти всякий раз, когда put_device() снижает счетчик ссылок до нуля и инициирует вызов release.
В функциях настройки device_initialize() вызывается перед device_add(), поэтому в местах возникновения ошибок счетчик ссылок равен ровно 1. put_device() без условий вызывает функцию release, которая освобождает структуру; последующий явный вызов kfree() затем оперирует уже освобожденной памятью.
Для idxd_setup_wqs() функция обратного вызова для wq также владеет opcap_bmap и wqcfg. При откате ошибок эти поля дополнительно освобождаются явно перед вызовом put_device(), что вызывает дальнейшие двойные освобождения памяти в обоих случаях.
Необходимо удалить избыточные явные вызовы kfree() из всех путей обработки ошибок при настройке и функций очистки для структур wq, engine и group, делегировав исключительное право собственности на эти выделения памяти функциям обратного вызова release.
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.