IO_uring With Linux 6.9 Gains Truncate Support, Per-Ring NAPI
The IO_uring changes were merged early during the nearly-over Linux 6.9 merge window. This round brought yet a few more features to this wonderful and innovative kernel feature.
The IO_uring updates for Linux 6.9 include support for per-ring NAPI, support for truncate, exposing SQPOLL utilization states, making task_work internal loops more fair, multi-shot fixes, and various other fixes/clean-ups.
The NAPI busy polling support has long been in the works by Stefan Roesch. When leveraging NAPI busy polling, round-trip times tested by Stefan dropped from 55 us to 38 us. The patch messages have more details for those interested in this new IO_uring functionality.
The IO_uring truncate (ftruncate) support allows for native truncate through IO_uring so applications no longer need to setup their own thread pool or offloading for doing non-blocking truncates.
More details on the IO_uring updates for Linux 6.9 via this pull with the code already in Linux Git ahead of today's Linux 6.9-rc1 release.
The IO_uring updates for Linux 6.9 include support for per-ring NAPI, support for truncate, exposing SQPOLL utilization states, making task_work internal loops more fair, multi-shot fixes, and various other fixes/clean-ups.
The NAPI busy polling support has long been in the works by Stefan Roesch. When leveraging NAPI busy polling, round-trip times tested by Stefan dropped from 55 us to 38 us. The patch messages have more details for those interested in this new IO_uring functionality.
The IO_uring truncate (ftruncate) support allows for native truncate through IO_uring so applications no longer need to setup their own thread pool or offloading for doing non-blocking truncates.
More details on the IO_uring updates for Linux 6.9 via this pull with the code already in Linux Git ahead of today's Linux 6.9-rc1 release.
18 Comments