SPDK v26.01: NVMe 2.0 target support, NVMe target RDMA interrupt support
On behalf of the SPDK community, I’m proud to announce the release of SPDK v26.01!
This release brings the following major features and improvements:
- NVMe 2.0 support for NVMe-oF target: SPDK NVMe-oF target now supports all required NVMe 2.0 features.
- JSON-RPC schema validation: Extensive validation added for JSON-RPC parameters to ensure correctness
- NVMe-oF target RDMA transport interrupt support
- NVMe-oF target preempt-and-abort reservation support
- NVMe-oF target additional passthrough support: Support for FW operations, security send/recv, sanitize, get/set features, and more
- Improved bdev and bdev/nvme thread synchronization: Reduced locking cases by half, several races identified and fixed
- Hot remove support for uring and aio bdev modules
- Write uncorrectable command support: Support added to the bdev layer, and plumbed through the bdev/nvme module
- AMD AE4DMA DMA engine support
- CUDA accel module: Used to support offloading XOR, FILL and COPY operations to GPUs
- DPDK 25.11: SPDK’s DPDK submodule was updated to the DPDK 25.11 release.
You can view the full changelog here. Deprecation notices for users upgrading from previous releases are available here.
New Contributors
This release includes 567 commits from 48 authors, with over 27k lines of code changed.
We’d especially like to recognize our first-time contributors:
- Modali Bhagyada
- Nelson Bighetti
- Omer Brezel
- Tiago Castro
- Valerii Hlushkov
- Adarsh Pradhan JMT
- Volodymyr Khrystenko
- Vineet Madan
- Umang Patel
- Vinoth Rajagopal
- Abhilash Shetty
- Maneesh Singhal
- Thore Sommer
Many thanks to everyone for your contributions, participation, and effort!