Кто в танке: io_uring это интерфейс асинхронного IO в ядре Linux
Интерфейс io_uring, предоставляемый ядром Linux начиная с выпуска 5.1, примечателен поддержкой полинга (polling) ввода/вывода и возможностью работы как с буферизацией, так и без буферизации. В API io_uring разработчики ядра попытались устранить недостатки старого интерфейса aio. По производительности io_uring очень близок к SPDK и существенно опережает libaio при работе с включённым поллингом. Например, применение io_uring в библиотеке libuv позволило добиться повышения пропускной способности в 8 раз, а включение асинхронной буферизированной записи на базе io_uring в файловой системе XFS привело к снижению задержек в 80 раз и повышению скорости передачи данных в 2.7 раза.
но
Анализ результатов действующей с 2020 года программы по выплате денежных вознаграждений за выявление уязвимостей в ядре Linux (kCTF Vulnerability Rewards Program) показал, что в 60% полученных в рамки программы заявок, эксплуатируются уязвимости в io_uring и ситуация не меняется со временем.