> -----Original Message----- > From: Peter Krempa <[email protected]> > Sent: 09 November 2020 16:44 > To: Suraj Kasi <[email protected]> > Cc: [email protected]; Thanos Makatos > <[email protected]>; John Levon <[email protected]> > 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.
