Libvirt NVME support

Thanos Makatos thanos.makatos at nutanix.com
Mon Nov 9 16:54:01 UTC 2020


> -----Original Message-----
> From: Peter Krempa <pkrempa at redhat.com>
> Sent: 09 November 2020 16:44
> To: Suraj Kasi <suraj.kasi at nutanix.com>
> Cc: libvirt-list at redhat.com; Thanos Makatos
> <thanos.makatos at nutanix.com>; John Levon <john.levon at nutanix.com>
> Subject: Re: Libvirt NVME support
> 
> On Mon, Nov 09, 2020 at 16:38:11 +0000, Suraj Kasi wrote:
> > Hi,
> >
> > We wanted to check if it’s possible to specify a disk’s target as nvme (so
> that the disk shows up as a nvme disk to the guest VM).
> >
> > Per libvirt documentation it looks like (since Libvirt 6.0.0) we can specify the
> disk type as nvme and disks source as a nvme. But the documentation does
> not say anything about being specify the disk’s target as nvme. Is it possible
> to present the disk to the guest as a nvme disk, if so how?
> >
> 
> NVMe device emulation is not supported at this point. I'm not even sure
> what the state of the feature in qemu upstream is.

In older QEMU versions (~2.12) it was broken, not sure whether it's fixed now. In any case, we plan to provide NVMe emulation using SPDK once the multiprocess QEMU and vfio-user/out-of-process device emulation patch series are merged.

> 
> If you have a real NVMe device, you can obviously use PCI device
> assignment with it to pass it to the guest os.

We want a _virtual_ NVMe controller in the guest where the backend can be connected to anything, e.g. iSCSI, raw block, NVMe, etc.





More information about the libvir-list mailing list