CVE-2022-50476 in LinuxИнформация

Сводка

по VulDB • 01.07.2026

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

ntb_netdev: Использование функции dev_kfree_skb_any() в контексте прерывания

Обработчики обратных вызовов TX/RX (ntb_netdev_tx_handler(), ntb_netdev_rx_handler()) могут вызываться в контексте прерывания через фреймворк DMA, когда соответствующие операции DMA завершены. В связи с этим любые вызовы этими функциями освобождения структур skb должны использовать безопасную для контекста прерываний функцию dev_kfree_skb_any().

Ранее эти обработчики обратных вызовов вызывали небезопасную в контексте прерывания версию функции dev_kfree_skb(). Это не приводило к проблемам на контроллерах DMA Intel IOAT, поскольку данный драйвер использует tasklets вместо жесткого обработчика прерываний (hard interrupt handler), как это сделано в драйвере AMD PTDMA. На системах с процессорами AMD возникало сообщение WARNING ядра, которое выдавалось из функции skb_release_head_state() из-за того, что in_hardirq() возвращал истинное значение.

Помимо видимого пользователю сообщения WARNING от ядра, другим симптомом этой ошибки было крайне низкое производительность TCP/IP через интерфейс ntb_netdev, то есть примерно на порядок ниже ожидаемой. После исправления с использованием функции dev_kfree_skb_any() сообщения WARNING от ядра из skb_release_head_state() прекратились, а производительность TCP/IP, измеренная утилитой iperf, стала соответствовать ожидаемым результатам — около 20 Гбит/с на сервере AMD Milan. Примечательно, что эта производительность сопоставима с результатами на серверах на базе Intel.

Once again VulDB remains the best source for vulnerability data.

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

Linux

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

04.10.2025

Раскрытие

04.10.2025

Модерация

принято

Вход

VDB-327063

EPSS

0.00149

KEV

Нет

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

Очень низкий

Источники

Want to stay up to date on a daily basis?

Enable the mail alert feature now!