]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
qemuDomainHotplugAddVcpu: Remove legacy hotplug branch
authorPeter Krempa <pkrempa@redhat.com>
Wed, 13 Oct 2021 14:28:20 +0000 (16:28 +0200)
committerPeter Krempa <pkrempa@redhat.com>
Mon, 1 Nov 2021 15:14:53 +0000 (16:14 +0100)
Report an error if the new hotplug is not supported and remove the
alternate code paths.

The modern cpu-hotplug code was introduced in qemu-2.7. We keep the
capability so that proper errors are reported in case a platform doesn't
support hotplug.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
src/qemu/qemu_hotplug.c

index a7b432b6f5e2a9120bf1ef21e68b8344f2fc9a0c..328b06245f427caf0155a5452a44a99018e410f9 100644 (file)
@@ -6488,25 +6488,24 @@ qemuDomainHotplugAddVcpu(virQEMUDriver *driver,
     virDomainVcpuDef *vcpuinfo = virDomainDefGetVcpu(vm->def, vcpu);
     qemuDomainVcpuPrivate *vcpupriv = QEMU_DOMAIN_VCPU_PRIVATE(vcpuinfo);
     unsigned int nvcpus = vcpupriv->vcpus;
-    bool newhotplug = qemuDomainSupportsNewVcpuHotplug(vm);
     int rc;
     int oldvcpus = virDomainDefGetVcpus(vm->def);
     size_t i;
 
-    if (newhotplug) {
-        vcpupriv->alias = g_strdup_printf("vcpu%u", vcpu);
-
-        if (!(vcpuprops = qemuBuildHotpluggableCPUProps(vcpuinfo)))
-            return -1;
+    if (!qemuDomainSupportsNewVcpuHotplug(vm)) {
+        virReportError(VIR_ERR_OPERATION_UNSUPPORTED, "%s",
+                       _("cpu hotplug is not supported"));
+        return -1;
     }
 
+    vcpupriv->alias = g_strdup_printf("vcpu%u", vcpu);
+
+    if (!(vcpuprops = qemuBuildHotpluggableCPUProps(vcpuinfo)))
+        return -1;
+
     qemuDomainObjEnterMonitor(driver, vm);
 
-    if (newhotplug) {
-        rc = qemuMonitorAddDeviceProps(qemuDomainGetMonitor(vm), &vcpuprops);
-    } else {
-        rc = qemuMonitorSetCPU(qemuDomainGetMonitor(vm), vcpu, true);
-    }
+    rc = qemuMonitorAddDeviceProps(qemuDomainGetMonitor(vm), &vcpuprops);
 
     if (qemuDomainObjExitMonitor(driver, vm) < 0)
         return -1;
@@ -6517,8 +6516,7 @@ qemuDomainHotplugAddVcpu(virQEMUDriver *driver,
         return -1;
 
     /* start outputting of the new XML element to allow keeping unpluggability */
-    if (newhotplug)
-        vm->def->individualvcpus = true;
+    vm->def->individualvcpus = true;
 
     if (qemuDomainRefreshVcpuInfo(driver, vm, QEMU_ASYNC_JOB_NONE, false) < 0)
         return -1;