]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
qemu: put data-file path to VM's cgroup and namespace
authorNikolai Barybin <nikolai.barybin@virtuozzo.com>
Wed, 20 Nov 2024 15:48:46 +0000 (18:48 +0300)
committerPeter Krempa <pkrempa@redhat.com>
Mon, 25 Nov 2024 21:31:18 +0000 (22:31 +0100)
Signed-off-by: Nikolai Barybin <nikolai.barybin@virtuozzo.com>
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
src/qemu/qemu_cgroup.c
src/qemu/qemu_namespace.c

index be4b9a38ffae5fe8306cf53644b3016650d137d3..f3c85d65e81e219caa3f71eaee2b76e9a03e9eb3 100644 (file)
@@ -232,7 +232,14 @@ int
 qemuSetupImageCgroup(virDomainObj *vm,
                      virStorageSource *src)
 {
-    return qemuSetupImageCgroupInternal(vm, src, false);
+    if (qemuSetupImageCgroupInternal(vm, src, false) < 0)
+        return -1;
+
+    if (src->dataFileStore &&
+        qemuSetupImageCgroupInternal(vm, src->dataFileStore, false) < 0)
+        return -1;
+
+    return 0;
 }
 
 
@@ -321,6 +328,10 @@ qemuSetupImageChainCgroup(virDomainObj *vm,
         if (qemuSetupImageCgroupInternal(vm, next, forceReadonly) < 0)
             return -1;
 
+        if (next->dataFileStore &&
+            qemuSetupImageCgroupInternal(vm, next->dataFileStore, forceReadonly) < 0)
+            return -1;
+
         /* setup only the top level image for read-write */
         forceReadonly = true;
     }
index 0ebc11552413c3de21999116aff8087776fec5cb..59421ec9d15c55f51f326ec5686ca7d706199352 100644 (file)
@@ -272,6 +272,10 @@ qemuDomainSetupDisk(virStorageSource *src,
         } else {
             GSList *targetPaths = NULL;
 
+            if (next->dataFileStore &&
+                virStorageSourceIsLocalStorage(next->dataFileStore))
+                *paths = g_slist_prepend(*paths, g_strdup(next->dataFileStore->path));
+
             if (virStorageSourceIsEmpty(next) ||
                 !virStorageSourceIsLocalStorage(next)) {
                 /* Not creating device. Just continue. */