Re: [libvirt] [RFC PATCH v2 14.5/18] qemu: Bump the memory locking limit for mdevs as well
> > Nice! For series: > > > > Tested-by: Alex Williamson> > > > (with KVMGT vGPU mdev) > Thank you very much for the effort Alex. Given its current state, I'm glad KVMGT was testable with my patches :). > Nit, if I configure a VM for an invalid mdev uuid, I get the following > error message: > > Error starting domain: Requested operation is not valid: mediated devices are > not supported by this kernel > > Traceback (most recent call last): > File "/usr/share/virt-manager/virtManager/asyncjob.py", line 88, in > cb_wrapper > callback(asyncjob, *args, **kwargs) > File "/usr/share/virt-manager/virtManager/asyncjob.py", line 124, in tmpcb > callback(*args, **kwargs) > File "/usr/share/virt-manager/virtManager/libvirtobject.py", line 83, in > newfn > ret = fn(self, *args, **kwargs) > File "/usr/share/virt-manager/virtManager/domain.py", line 1404, in startup > self._backend.create() > File "/usr/lib64/python2.7/site-packages/libvirt.py", line 1035, in create > if ret == -1: raise libvirtError ('virDomainCreate() failed', dom=self) > libvirtError: Requested operation is not valid: mediated devices are not > supported by this kernel > > In this case it should really just be a device not found error, the > speculation that the kernel doesn't support mediated devices is > incorrect. Thanks, > Noted, I'll address this as part of, presumably, v3 when I get a patch review. Thanks, Erik -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [RFC PATCH v2 14.5/18] qemu: Bump the memory locking limit for mdevs as well
On Thu, 16 Feb 2017 11:04:39 -0700 Alex Williamsonwrote: > On Thu, 16 Feb 2017 17:49:45 +0100 > Erik Skultety wrote: > > > Since mdevs are just another type of VFIO devices, we should increase > > the memory locking limit the same way we do for VFIO PCI devices. > > > > Signed-off-by: Erik Skultety > > --- > > src/qemu/qemu_domain.c | 9 + > > 1 file changed, 5 insertions(+), 4 deletions(-) > > > > diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c > > index eb86385..bdd687f 100644 > > --- a/src/qemu/qemu_domain.c > > +++ b/src/qemu/qemu_domain.c > > @@ -6222,11 +6222,12 @@ qemuDomainRequiresMemLock(virDomainDefPtr def) > > return true; > > > > for (i = 0; i < def->nhostdevs; i++) { > > -virDomainHostdevDefPtr dev = def->hostdevs[i]; > > +virDomainHostdevSubsysPtr subsys = > > >hostdevs[i]->source.subsys; > > > > -if (dev->mode == VIR_DOMAIN_HOSTDEV_MODE_SUBSYS && > > -dev->source.subsys.type == VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI > > && > > -dev->source.subsys.u.pci.backend == > > VIR_DOMAIN_HOSTDEV_PCI_BACKEND_VFIO) > > +if (def->hostdevs[i]->mode == VIR_DOMAIN_HOSTDEV_MODE_SUBSYS && > > +(subsys->type == VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_MDEV || > > + (subsys->type == VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI && > > + subsys->u.pci.backend == > > VIR_DOMAIN_HOSTDEV_PCI_BACKEND_VFIO))) > > return true; > > } > > > > Nice! For series: > > Tested-by: Alex Williamson > > (with KVMGT vGPU mdev) Nit, if I configure a VM for an invalid mdev uuid, I get the following error message: Error starting domain: Requested operation is not valid: mediated devices are not supported by this kernel Traceback (most recent call last): File "/usr/share/virt-manager/virtManager/asyncjob.py", line 88, in cb_wrapper callback(asyncjob, *args, **kwargs) File "/usr/share/virt-manager/virtManager/asyncjob.py", line 124, in tmpcb callback(*args, **kwargs) File "/usr/share/virt-manager/virtManager/libvirtobject.py", line 83, in newfn ret = fn(self, *args, **kwargs) File "/usr/share/virt-manager/virtManager/domain.py", line 1404, in startup self._backend.create() File "/usr/lib64/python2.7/site-packages/libvirt.py", line 1035, in create if ret == -1: raise libvirtError ('virDomainCreate() failed', dom=self) libvirtError: Requested operation is not valid: mediated devices are not supported by this kernel In this case it should really just be a device not found error, the speculation that the kernel doesn't support mediated devices is incorrect. Thanks, Alex -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [RFC PATCH v2 14.5/18] qemu: Bump the memory locking limit for mdevs as well
On Thu, 16 Feb 2017 17:49:45 +0100 Erik Skultetywrote: > Since mdevs are just another type of VFIO devices, we should increase > the memory locking limit the same way we do for VFIO PCI devices. > > Signed-off-by: Erik Skultety > --- > src/qemu/qemu_domain.c | 9 + > 1 file changed, 5 insertions(+), 4 deletions(-) > > diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c > index eb86385..bdd687f 100644 > --- a/src/qemu/qemu_domain.c > +++ b/src/qemu/qemu_domain.c > @@ -6222,11 +6222,12 @@ qemuDomainRequiresMemLock(virDomainDefPtr def) > return true; > > for (i = 0; i < def->nhostdevs; i++) { > -virDomainHostdevDefPtr dev = def->hostdevs[i]; > +virDomainHostdevSubsysPtr subsys = >hostdevs[i]->source.subsys; > > -if (dev->mode == VIR_DOMAIN_HOSTDEV_MODE_SUBSYS && > -dev->source.subsys.type == VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI && > -dev->source.subsys.u.pci.backend == > VIR_DOMAIN_HOSTDEV_PCI_BACKEND_VFIO) > +if (def->hostdevs[i]->mode == VIR_DOMAIN_HOSTDEV_MODE_SUBSYS && > +(subsys->type == VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_MDEV || > + (subsys->type == VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI && > + subsys->u.pci.backend == VIR_DOMAIN_HOSTDEV_PCI_BACKEND_VFIO))) > return true; > } > Nice! For series: Tested-by: Alex Williamson (with KVMGT vGPU mdev) -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
[libvirt] [RFC PATCH v2 14.5/18] qemu: Bump the memory locking limit for mdevs as well
Since mdevs are just another type of VFIO devices, we should increase the memory locking limit the same way we do for VFIO PCI devices. Signed-off-by: Erik Skultety--- src/qemu/qemu_domain.c | 9 + 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index eb86385..bdd687f 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -6222,11 +6222,12 @@ qemuDomainRequiresMemLock(virDomainDefPtr def) return true; for (i = 0; i < def->nhostdevs; i++) { -virDomainHostdevDefPtr dev = def->hostdevs[i]; +virDomainHostdevSubsysPtr subsys = >hostdevs[i]->source.subsys; -if (dev->mode == VIR_DOMAIN_HOSTDEV_MODE_SUBSYS && -dev->source.subsys.type == VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI && -dev->source.subsys.u.pci.backend == VIR_DOMAIN_HOSTDEV_PCI_BACKEND_VFIO) +if (def->hostdevs[i]->mode == VIR_DOMAIN_HOSTDEV_MODE_SUBSYS && +(subsys->type == VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_MDEV || + (subsys->type == VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI && + subsys->u.pci.backend == VIR_DOMAIN_HOSTDEV_PCI_BACKEND_VFIO))) return true; } -- 2.10.2 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list