NVMe PCI Endpoint Function Target Driver Coming To Linux 6.14

Written by Michael Larabel in Linux Storage on 15 January 2025 at 10:45 AM EST. 8 Comments
LINUX STORAGE
An interesting new driver set to premiere in the upcoming Linux 6.14 kernel is the NVMe PCI Endpoint Function Target code authored by Western Digital.

Queued up by way of the Linux block subsystem's "for-next" branch ahead of the Linux 6.14 merge window opening is this new NVMe PCI target driver using the PCI endpoint framework. With hardware having a PCI controller capable of running in endpoint mode, PCIe NVMe controllers can be created.

The documentation patch goes into all of the interesting technical details on this NVMe target driver. This is intended primarily for testing purposes such as with small single board computers having a PCIe endpoint controller and then creating an NVMe target to loop files or block devices. TCP targets to remote NVMe devices can also be used.

NVMe target EPF


Damien Le Moal of storage company Western Digital was the lead developer on this driver. The driver patch within block's for-next branch comments:
"Implement a PCI target driver using the PCI endpoint framework. This requires hardware with a PCI controller capable of executing in endpoint mode.
...
Using a Rock5B board (Rockchip RK3588 SoC, PCI Gen3x4 endpoint controller) with a target PCI controller setup with 4 I/O queues and a null_blk block device as a namespace, the maximum performance using fio was measured at 131 KIOPS for random 4K reads and up to 2.8 GB/S throughput.
...
The NVMe PCI endpoint target driver is not intended for production use. It is a tool for learning NVMe, exploring existing features and testing implementations of new NVMe features."

Barring any last minute issues coming about, this driver should premiere in the upcoming Linux 6.14 kernel cycle.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com 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 OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week