]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
qemu: process: Move clearing of QEMU_CAPS_CHARDEV_FD_PASS to qemuProcessPrepareQEMUCaps
authorPeter Krempa <pkrempa@redhat.com>
Sun, 24 Nov 2019 08:41:49 +0000 (09:41 +0100)
committerPeter Krempa <pkrempa@redhat.com>
Tue, 3 Dec 2019 14:26:54 +0000 (15:26 +0100)
Move the post-processing of the QEMU_CAPS_CHARDEV_FD_PASS flag to the
new function.

The clearing of the capability is based on the presence of
VIR_QEMU_PROCESS_START_STANDALONE so we must also pass in the process
start flags.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Cole Robinson <crobinso@redhat.com>
src/qemu/qemu_process.c

index 921ad82c5d7feb48d5a2e6578166990086028f0a..227ec3098911e7ce974f4406e0c1ed8a8737d58d 100644 (file)
@@ -5490,6 +5490,7 @@ qemuProcessStartUpdateCustomCaps(virDomainObjPtr vm)
  * qemuProcessPrepareQEMUCaps:
  * @vm: domain object
  * @qemuCapsCache: cache of QEMU capabilities
+ * @processStartFlags: flags based on the VIR_QEMU_PROCESS_START_* enum
  *
  * Prepare the capabilities of a QEMU process for startup. This includes
  * copying the caps to a static cache and potential post-processing depending
@@ -5499,7 +5500,8 @@ qemuProcessStartUpdateCustomCaps(virDomainObjPtr vm)
  */
 static int
 qemuProcessPrepareQEMUCaps(virDomainObjPtr vm,
-                           virFileCachePtr qemuCapsCache)
+                           virFileCachePtr qemuCapsCache,
+                           unsigned int processStartFlags)
 {
     qemuDomainObjPrivatePtr priv = vm->privateData;
     size_t i;
@@ -5519,6 +5521,9 @@ qemuProcessPrepareQEMUCaps(virDomainObjPtr vm,
         }
     }
 
+    if (processStartFlags & VIR_QEMU_PROCESS_START_STANDALONE)
+        virQEMUCapsClear(priv->qemuCaps, QEMU_CAPS_CHARDEV_FD_PASS);
+
     return 0;
 }
 
@@ -5574,12 +5579,9 @@ qemuProcessInit(virQEMUDriverPtr driver,
     }
 
     VIR_DEBUG("Determining emulator version");
-    if (qemuProcessPrepareQEMUCaps(vm, driver->qemuCapsCache) < 0)
+    if (qemuProcessPrepareQEMUCaps(vm, driver->qemuCapsCache, flags) < 0)
         goto cleanup;
 
-    if (flags & VIR_QEMU_PROCESS_START_STANDALONE)
-        virQEMUCapsClear(priv->qemuCaps, QEMU_CAPS_CHARDEV_FD_PASS);
-
     if (qemuDomainUpdateCPU(vm, updatedCPU, &origCPU) < 0)
         goto cleanup;