NVMe and SR-IOV, how to use together?

Christoph Hellwig hch at infradead.org
Mon Sep 18 09:11:48 PDT 2017


SR-IOV itself only allows you to create new virtual functions,
you can look at any number of Linux howtos on creating them using
the sysfs interface.

As far as NVMe is concerned there are multiple levels of interaction
that could be possible, all optional.

First NVMe since version 1.1 supports subsystems with multiple
controlles, and you can use namespace management (if support by the
device) to assign namespaces to one or more controllers.  On Linux
you can use the nvme-cli tool for that.

Since NVMe 1.3 there are virtualization extensions that also allow to
assign resources like queue pairs to specific VMs.  There is no support
in Linux or nvme-cli for that at the moment.



More information about the Linux-nvme mailing list