Many NVMe Updates & Other Block Changes For Linux 5.18

Written by Michael Larabel in Linux Storage on 20 March 2022 at 06:25 AM EDT. 2 Comments
In addition to the IO_uring updates for Linux 5.18, block subsystem maintainer Jens Axboe has also submitted the core block and driver changes ahead of the v5.18 merge window opening tonight following the release of Linux 5.17.

The block core/driver changes are ready to go for this next Linux kernel cycle. As usual for recent times, much of the block subsystem work revolves around improving the NVMe code. Some of the changes to find coming with Linux 5.17 include:

- NVMe support for vectorized I/O for user pass-through via new NVME_IOCTL_IO64_CMD_VEC ioctl for passing an array of iovecs.

- Support for buffered I/O on NVMe block devices within the NVMET code. With this mode of using the file back-end and using cache for the block device namespace it shows a "significant performance improvement".

- Improved error logging for the NVMe code.

- MQ (multi-queue) updates, including many code clean-ups.

- BCache fixes.

- BFQ clean-ups and fixes.

- Support for exposing the NVMe direct discovery controller and central discovery controller via sysfs.

- blk-crypto capabilities are now reported via sysfs.

More information within the pull requests for the block driver and block changes.

The Linux 5.18 merge window will be running the next two weeks while the stable Linux 5.18 kernel should debut around the end of May.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via

Popular News This Week