From: Michal Privoznik Date: Tue, 21 Jul 2020 13:08:13 +0000 (+0200) Subject: qemuDomainNamespaceTeardownHostdev: Unlink paths in one go X-Git-Tag: v6.7.0-rc1~175 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0983833ed95185575dccc183cd85982ffe995e6e;p=thirdparty%2Flibvirt.git qemuDomainNamespaceTeardownHostdev: Unlink paths in one go In my attempt to deduplicate the code, we can use qemuDomainSetupHostdev() to obtain the list of paths to unlink and then pass it to qemuDomainNamespaceUnlinkPaths() to unlink them in a single fork. Signed-off-by: Michal Privoznik Reviewed-by: Ján Tomko --- diff --git a/src/qemu/qemu_namespace.c b/src/qemu/qemu_namespace.c index b3e95f1724..6a1fececd7 100644 --- a/src/qemu/qemu_namespace.c +++ b/src/qemu/qemu_namespace.c @@ -1450,20 +1450,18 @@ int qemuDomainNamespaceTeardownHostdev(virDomainObjPtr vm, virDomainHostdevDefPtr hostdev) { - g_autofree char *path = NULL; + VIR_AUTOSTRINGLIST paths = NULL; if (!qemuDomainNamespaceEnabled(vm, QEMU_DOMAIN_NS_MOUNT)) return 0; - if (qemuDomainGetHostdevPath(hostdev, &path, NULL) < 0) - return -1; - - if (path && qemuNamespaceUnlinkPath(vm, path) < 0) + if (qemuDomainSetupHostdev(vm, + hostdev, + true, + &paths) < 0) return -1; - if (qemuHostdevNeedsVFIO(hostdev) && - !qemuDomainNeedsVFIO(vm->def) && - qemuNamespaceUnlinkPath(vm, QEMU_DEV_VFIO) < 0) + if (qemuNamespaceUnlinkPaths(vm, (const char **) paths) < 0) return -1; return 0;