]> xenbits.xensource.com Git - libvirt.git/commitdiff
qemu: assume QEMU_CAPS_DEVICE almost everywhere
authorJán Tomko <jtomko@redhat.com>
Fri, 20 May 2016 11:22:26 +0000 (13:22 +0200)
committerJán Tomko <jtomko@redhat.com>
Mon, 23 May 2016 07:39:40 +0000 (09:39 +0200)
Remove more checks that are no longer necessary.

src/qemu/qemu_command.c
src/qemu/qemu_domain.c
src/qemu/qemu_domain.h
src/qemu/qemu_hostdev.c
src/qemu/qemu_hotplug.c
src/qemu/qemu_process.c

index 85e76803e7a15469e7ac91e3effcedc254c162ed..8bcc08ce6ba5eda7a64c3580ebc123066446b40b 100644 (file)
@@ -8007,7 +8007,7 @@ qemuBuildInterfaceCommandLine(virCommandPtr cmd,
             goto cleanup;
         virCommandAddArgList(cmd, "-netdev", host, NULL);
     }
-    if (qemuDomainSupportsNicdev(def, qemuCaps, net)) {
+    if (qemuDomainSupportsNicdev(def, net)) {
         if (!(nic = qemuBuildNicDevStr(def, net, vlan, bootindex,
                                        vhostfdSize, qemuCaps)))
             goto cleanup;
index cb9d5eb8dd15169baa172151aa9687c12b84f5d1..c21465d41c764885117b50e603f973d30e3167f9 100644 (file)
@@ -5396,12 +5396,8 @@ qemuDomainDetectVcpuPids(virQEMUDriverPtr driver,
 
 bool
 qemuDomainSupportsNicdev(virDomainDefPtr def,
-                         virQEMUCapsPtr qemuCaps,
                          virDomainNetDefPtr net)
 {
-    if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_DEVICE))
-        return false;
-
     /* non-virtio ARM nics require legacy -net nic */
     if (((def->os.arch == VIR_ARCH_ARMV7L) ||
         (def->os.arch == VIR_ARCH_AARCH64)) &&
@@ -5417,7 +5413,7 @@ qemuDomainSupportsNetdev(virDomainDefPtr def,
                          virQEMUCapsPtr qemuCaps,
                          virDomainNetDefPtr net)
 {
-    if (!qemuDomainSupportsNicdev(def, qemuCaps, net))
+    if (!qemuDomainSupportsNicdev(def, net))
         return false;
     return virQEMUCapsGet(qemuCaps, QEMU_CAPS_NETDEV);
 }
index baf8bd880c5195d3bd5c21660f17e8759a2751e8..f99f0bb5358e46ba9c87619aa257e19757155c48 100644 (file)
@@ -618,7 +618,6 @@ int qemuDomainDetectVcpuPids(virQEMUDriverPtr driver, virDomainObjPtr vm,
                              int asyncJob);
 
 bool qemuDomainSupportsNicdev(virDomainDefPtr def,
-                              virQEMUCapsPtr qemuCaps,
                               virDomainNetDefPtr net);
 
 bool qemuDomainSupportsNetdev(virDomainDefPtr def,
index ca38a064a7ade47034c1489a3bb53d60d4cf0921..e16d5fd0274aea9685b1cacfcea1af3c0a8661e7 100644 (file)
@@ -197,9 +197,7 @@ qemuHostdevPreparePCIDevicesCheckSupport(virDomainHostdevDefPtr *hostdevs,
             if (supportsPassthroughVFIO &&
                 virQEMUCapsGet(qemuCaps, QEMU_CAPS_DEVICE_VFIO_PCI)) {
                 *backend = VIR_DOMAIN_HOSTDEV_PCI_BACKEND_VFIO;
-            } else if (supportsPassthroughKVM &&
-                       (virQEMUCapsGet(qemuCaps, QEMU_CAPS_PCIDEVICE) ||
-                        virQEMUCapsGet(qemuCaps, QEMU_CAPS_DEVICE))) {
+            } else if (supportsPassthroughKVM) {
                 *backend = VIR_DOMAIN_HOSTDEV_PCI_BACKEND_KVM;
             } else {
                 virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
index aa897d2333bd0ec5056e8b740b6fd04d6bc4a047..fc1bf6e5ea09d22429444abc18b0be06100649bd 100644 (file)
@@ -1334,12 +1334,6 @@ int qemuDomainAttachRedirdevDevice(virQEMUDriverPtr driver,
     char *charAlias = NULL;
     char *devstr = NULL;
 
-    if (!virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_DEVICE)) {
-        virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
-                       _("redirected devices are not supported by this QEMU"));
-        return ret;
-    }
-
     if (qemuAssignDeviceRedirdevAlias(vm->def, redirdev, -1) < 0)
         goto cleanup;
 
@@ -1537,12 +1531,6 @@ int qemuDomainAttachChrDevice(virQEMUDriverPtr driver,
     char *charAlias = NULL;
     bool need_release = false;
 
-    if (!virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_DEVICE)) {
-        virReportError(VIR_ERR_OPERATION_INVALID, "%s",
-                       _("qemu does not support -device"));
-        goto cleanup;
-    }
-
     if (qemuAssignDeviceChrAlias(vmdef, chr, -1) < 0)
         goto cleanup;
 
@@ -1897,8 +1885,7 @@ qemuDomainAttachHostSCSIDevice(virConnectPtr conn,
     bool teardowncgroup = false;
     bool teardownlabel = false;
 
-    if (!virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_DEVICE) ||
-        !virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_DEVICE_SCSI_GENERIC)) {
+    if (!virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_DEVICE_SCSI_GENERIC)) {
         virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
                        _("SCSI passthrough is not supported by this version of qemu"));
         return -1;
@@ -3092,8 +3079,7 @@ qemuDomainRemoveNetDevice(virQEMUDriverPtr driver,
         goto cleanup;
 
     qemuDomainObjEnterMonitor(driver, vm);
-    if (virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_NETDEV) &&
-        virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_DEVICE)) {
+    if (virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_NETDEV)) {
         if (qemuMonitorRemoveNetdev(priv->mon, hostnet_name) < 0) {
             if (qemuDomainObjExitMonitor(driver, vm) < 0)
                 goto cleanup;
@@ -3472,13 +3458,6 @@ qemuDomainDetachDiskDevice(virQEMUDriverPtr driver,
     int ret = -1;
     qemuDomainObjPrivatePtr priv = vm->privateData;
 
-    if (!virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_DEVICE)) {
-        virReportError(VIR_ERR_OPERATION_FAILED,
-                       _("Underlying qemu does not support %s disk removal"),
-                       virDomainDiskBusTypeToString(detach->bus));
-        goto cleanup;
-    }
-
     if (detach->mirror) {
         virReportError(VIR_ERR_BLOCK_COPY_ACTIVE,
                        _("disk '%s' is in an active block job"),
@@ -3729,12 +3708,6 @@ qemuDomainDetachHostUSBDevice(virQEMUDriverPtr driver,
         return -1;
     }
 
-    if (!virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_DEVICE)) {
-        virReportError(VIR_ERR_OPERATION_FAILED,
-                       "%s", _("device cannot be detached with this QEMU version"));
-        return -1;
-    }
-
     qemuDomainMarkDeviceForRemoval(vm, detach->info);
 
     qemuDomainObjEnterMonitor(driver, vm);
@@ -3759,12 +3732,6 @@ qemuDomainDetachHostSCSIDevice(virQEMUDriverPtr driver,
         return -1;
     }
 
-    if (!virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_DEVICE)) {
-        virReportError(VIR_ERR_OPERATION_FAILED,
-                       "%s", _("device cannot be detached with this QEMU version"));
-        return -1;
-    }
-
     qemuDomainMarkDeviceForRemoval(vm, detach->info);
 
     qemuDomainObjEnterMonitor(driver, vm);
@@ -3781,11 +3748,9 @@ qemuDomainDetachThisHostDevice(virQEMUDriverPtr driver,
                                virDomainObjPtr vm,
                                virDomainHostdevDefPtr detach)
 {
-    qemuDomainObjPrivatePtr priv = vm->privateData;
     int ret = -1;
 
-    if (virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_DEVICE) &&
-        !detach->info->alias) {
+    if (!detach->info->alias) {
         if (qemuAssignDeviceHostdevAlias(vm->def, &detach->info->alias, -1) < 0)
             return -1;
     }
@@ -4111,12 +4076,6 @@ int qemuDomainDetachChrDevice(virQEMUDriverPtr driver,
         return ret;
     }
 
-    if (!virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_DEVICE)) {
-        virReportError(VIR_ERR_OPERATION_INVALID, "%s",
-                       _("qemu does not support -device"));
-        return ret;
-    }
-
     if (!tmpChr->info.alias && qemuAssignDeviceChrAlias(vmdef, tmpChr, -1) < 0)
         return ret;
 
@@ -4166,12 +4125,6 @@ qemuDomainDetachRNGDevice(virQEMUDriverPtr driver,
 
     tmpRNG = vm->def->rngs[idx];
 
-    if (!virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_DEVICE)) {
-        virReportError(VIR_ERR_OPERATION_INVALID, "%s",
-                       _("qemu does not support -device"));
-        return -1;
-    }
-
     if (!tmpRNG->info.alias) {
         virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
                        _("alias not set for RNG device"));
@@ -4205,12 +4158,6 @@ qemuDomainDetachMemoryDevice(virQEMUDriverPtr driver,
     int rc;
     int ret = -1;
 
-    if (!virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_DEVICE)) {
-        virReportError(VIR_ERR_OPERATION_INVALID, "%s",
-                       _("qemu does not support -device"));
-        return -1;
-    }
-
     qemuDomainMemoryDeviceAlignSize(vm->def, memdef);
 
     if ((idx = virDomainMemoryFindByDef(vm->def, memdef)) < 0) {
index 50a6f09221805234ef6871685309fc68043c6451..b2669c0e0de42abc739a28ccd32e66d8ee405a6b 100644 (file)
@@ -4857,11 +4857,9 @@ qemuProcessPrepareDomain(virConnectPtr conn,
      * we also need to populate the PCI address set cache for later
      * use in hotplug
      */
-    if (virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_DEVICE)) {
-        VIR_DEBUG("Assigning domain PCI addresses");
-        if ((qemuDomainAssignAddresses(vm->def, priv->qemuCaps, vm)) < 0)
-            goto cleanup;
-    }
+    VIR_DEBUG("Assigning domain PCI addresses");
+    if ((qemuDomainAssignAddresses(vm->def, priv->qemuCaps, vm)) < 0)
+        goto cleanup;
 
     if (qemuAssignDeviceAliases(vm->def, priv->qemuCaps) < 0)
         goto cleanup;