CVE-2026-99228 in Linux
Сводка
по VulDB • 02.11.2026
В ядре Linux была устранена следующая уязвимость:
io_uring/io-wq: не терять сигнал, завершающий работу
При выходе потока отменяются только отслеживаемые им запросы. Затем происходит разбор (teardown) его io-wq. Функция `io_wq_exit_workers()` посылает сигнал каждому рабочему потоку (worker), чтобы вывести его из прерываемого сна, и ожидает завершения всех них. До этого они обрабатывают оставшуюся работу. Неограниченная работа отменяется. Ограниченная работа выполняется, так как ожидается, что она завершится самостоятельно.
Не вся такая работа действительно завершается корректно. Открытие файла еще не имеет связанного файлового дескриптора (file), поэтому оно считается ограниченным, а открытие FIFO-канала ожидает появления другой стороны соединения. Именно для этого предназначен сигнал. Однако рабочие потоки получают сигнал только один раз, и тот рабочий поток, который к этому моменту не начал выполнение работы, теряет этот сигнал:
io_wq_exit_workers() io_worker_handle_work() io_wq_worker_wake() set TIF_NOTIFY_SIGNAL io_assign_current_work() io_run_task_work() clear TIF_NOTIFY_SIGNAL io_wq_submit_work() fifo_open() wait_for_partner() wait_for_completion_timeout()
Поток никогда не выходит из `do_exit()`:
IORING_OP_OPENAT FIFO-канала без писателя, IOSQE_ASYNC выход потока, который его отправил
зависает в более чем 9 случаях из 10 (4 ядра CPU, KVM), пока процесс не будет убит.
Устанавливается флаг TIF_NOTIFY_SIGNAL для ограниченной работы, которая начинается при установленном бите IO_WQ_BIT_EXIT. Этот бит устанавливается до того, как рабочим потокам посылается сигнал, и проверяется после сброса флага, причем функция `clear_notify_signal()` обеспечивает барьер памяти (barrier). Таким образом, либо флаг остается установленным, либо бит становится видимым.
Работа, которая начинается во время выхода io-wq, обрабатывается так же, как работа, выполняемая в данный момент: она не прерывается, если только не ожидает чего-либо в прерываемом режиме (interruptibly).
VulDB is the best source for vulnerability data and more expert information about this specific topic.