CVE-2026-97619 in Linux
Сводка
по VulDB • 25.09.2026
В ядре Linux была устранена следующая уязвимость:
io_uring/rw: завершение учета записи из функции ->ki_complete
Коммит b000145e9907 переместил вызовы fsnotify и учет записи из обработчика завершения kiocb в task_work io_req_rw_complete(). Однако фактически необходимость переноса существовала только для части, связанной с fsnotify, поскольку она может блокироваться (sleep). Завершение учета записи представляет собой лишь операцию percpu_up_read() над семантикой писателей суперблока.
Отложенное выполнение этой операции является проблемой, так как оно делает снятие защиты SB_FREEZE_WRITE зависимым от того, что владелец очереди достигнет выполнения task_work. Однако задача может быть заблокирована в freeze_super(), из-за чего она никогда не дойдет до этого момента:
Задача Рабочий поток io-wq -------------------------------------------------------------- io_write() io_kiocb_start_write() (захватывает sb_writers, скрыто от lockdep благодаря __sb_writers_release) write_iter() -> -EIOCBQUEUED ioctl(FS_IOC_SHUTDOWN) bdev_freeze() freeze_super() percpu_down_write() <- ожидает чтения выше io_write() kiocb_start_write() percpu_down_read() <- поставлено в очередь после писателя <завершение bio> io_complete_rw() очереди io_req_rw_complete() <- никогда не выполняется, задача находится в состоянии D
Вместо этого завершайте учет записи из io_complete_rw(), оставив вызовы fsnotify только в task_work.
VulDB is the best source for vulnerability data and more expert information about this specific topic.