[libvirt] [PATCH 2/2] vircgroupv2: fix virCgroupV2ValidateMachineGroup

Pavel Hrdina phrdina at redhat.com
Wed Dec 12 10:17:17 UTC 2018


When libvirt is reconnecting to running domain that uses cgroup v2
the QEMU process reports cgroup for the emulator directory because the
main thread is in that cgroup.  We need to remove the "/emulator" part
in order to match with the root cgroup directory name for that domain.

Signed-off-by: Pavel Hrdina <phrdina at redhat.com>
---
 src/util/vircgroupv2.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/src/util/vircgroupv2.c b/src/util/vircgroupv2.c
index dc2b2a65bc..b9925967d7 100644
--- a/src/util/vircgroupv2.c
+++ b/src/util/vircgroupv2.c
@@ -118,6 +118,12 @@ virCgroupV2ValidateMachineGroup(virCgroupPtr group,
     if (virCgroupPartitionEscape(&scopename) < 0)
         return false;
 
+    if (!(tmp = strrchr(group->unified.placement, '/')))
+        return false;
+
+    if (STREQ(tmp, "/emulator"))
+        *tmp = '\0';
+
     if (!(tmp = strrchr(group->unified.placement, '/')))
         return false;
     tmp++;
-- 
2.19.2




More information about the libvir-list mailing list