Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
SUSE:SLE-15-SP1:Update
libvirt.14190
1219f0ca-qemu-refactor-mdev-validation-method-s...
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 1219f0ca-qemu-refactor-mdev-validation-method-signatures.patch of Package libvirt.14190
commit 1219f0cadc93aa0953cc5ad31e9f8675b546675c Author: Boris Fiuczynski <fiuczy@linux.ibm.com> Date: Tue Aug 27 16:19:22 2019 +0200 qemu: refactor mdev validation method signatures Refactoring the method signatures in preparation for checking boot index of the mediated devices. Reviewed-by: Ján Tomko <jtomko@redhat.com> Reviewed-by: Marc Hartmayer <mhartmay@linux.ibm.com> Signed-off-by: Bjoern Walk <bwalk@linux.ibm.com> Signed-off-by: Boris Fiuczynski <fiuczy@linux.ibm.com> Signed-off-by: Ján Tomko <jtomko@redhat.com> Index: libvirt-5.1.0/src/qemu/qemu_domain.c =================================================================== --- libvirt-5.1.0.orig/src/qemu/qemu_domain.c +++ libvirt-5.1.0/src/qemu/qemu_domain.c @@ -4713,10 +4713,13 @@ qemuDomainDeviceDefValidateNetwork(const static int -qemuDomainMdevDefVFIOPCIValidate(const virDomainHostdevSubsysMediatedDev *dev, +qemuDomainMdevDefVFIOPCIValidate(const virDomainHostdevDef *hostdev, const virDomainDef *def, virQEMUCapsPtr qemuCaps) { + const virDomainHostdevSubsysMediatedDev *dev; + + dev = &hostdev->source.subsys.u.mdev; if (dev->display == VIR_TRISTATE_SWITCH_ABSENT) return 0; @@ -4749,17 +4752,18 @@ qemuDomainMdevDefVFIOPCIValidate(const v static int -qemuDomainMdevDefVFIOAPValidate(const virDomainDef *def) +qemuDomainMdevDefVFIOAPValidate(const virDomainHostdevDef *hostdev ATTRIBUTE_UNUSED, + const virDomainDef *def) { size_t i; bool vfioap_found = false; /* VFIO-AP is restricted to a single mediated device only */ for (i = 0; i < def->nhostdevs; i++) { - virDomainHostdevDefPtr hostdev = def->hostdevs[i]; + virDomainHostdevDefPtr hdev = def->hostdevs[i]; - if (virHostdevIsMdevDevice(hostdev) && - hostdev->source.subsys.u.mdev.model == VIR_MDEV_MODEL_TYPE_VFIO_AP) { + if (virHostdevIsMdevDevice(hdev) && + hdev->source.subsys.u.mdev.model == VIR_MDEV_MODEL_TYPE_VFIO_AP) { if (vfioap_found) { virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", _("Only one hostdev of model vfio-ap is " @@ -4775,15 +4779,18 @@ qemuDomainMdevDefVFIOAPValidate(const vi static int -qemuDomainMdevDefValidate(const virDomainHostdevSubsysMediatedDev *mdevsrc, +qemuDomainMdevDefValidate(const virDomainHostdevDef *hostdev, const virDomainDef *def, virQEMUCapsPtr qemuCaps) { + const virDomainHostdevSubsysMediatedDev *mdevsrc; + + mdevsrc = &hostdev->source.subsys.u.mdev; switch ((virMediatedDeviceModelType) mdevsrc->model) { case VIR_MDEV_MODEL_TYPE_VFIO_PCI: - return qemuDomainMdevDefVFIOPCIValidate(mdevsrc, def, qemuCaps); + return qemuDomainMdevDefVFIOPCIValidate(hostdev, def, qemuCaps); case VIR_MDEV_MODEL_TYPE_VFIO_AP: - return qemuDomainMdevDefVFIOAPValidate(def); + return qemuDomainMdevDefVFIOAPValidate(hostdev, def); case VIR_MDEV_MODEL_TYPE_VFIO_CCW: break; case VIR_MDEV_MODEL_TYPE_LAST: @@ -4802,8 +4809,6 @@ qemuDomainDeviceDefValidateHostdev(const const virDomainDef *def, virQEMUCapsPtr qemuCaps) { - const virDomainHostdevSubsysMediatedDev *mdevsrc; - /* forbid capabilities mode hostdev in this kind of hypervisor */ if (hostdev->mode == VIR_DOMAIN_HOSTDEV_MODE_CAPABILITIES) { virReportError(VIR_ERR_CONFIG_UNSUPPORTED, @@ -4834,8 +4839,7 @@ qemuDomainDeviceDefValidateHostdev(const "supported by mediated devices")); return -1; } - mdevsrc = &hostdev->source.subsys.u.mdev; - return qemuDomainMdevDefValidate(mdevsrc, def, qemuCaps); + return qemuDomainMdevDefValidate(hostdev, def, qemuCaps); case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_LAST: default: virReportEnumRangeError(virDomainHostdevSubsysType,
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor