render / rpms / libvirt

Forked from rpms/libvirt 10 months ago
Clone
e9d682
From b76623b5921238c9a4db9b3e1958b51a4d7e8b52 Mon Sep 17 00:00:00 2001
e9d682
Message-Id: <b76623b5921238c9a4db9b3e1958b51a4d7e8b52@dist-git>
e9d682
From: Michal Privoznik <mprivozn@redhat.com>
e9d682
Date: Wed, 28 Sep 2022 10:12:36 +0200
e9d682
Subject: [PATCH] qemuProcessReconnect: Don't build memory paths
e9d682
MIME-Version: 1.0
e9d682
Content-Type: text/plain; charset=UTF-8
e9d682
Content-Transfer-Encoding: 8bit
e9d682
e9d682
Let me take you on a short trip to history. A long time ago,
e9d682
libvirt would configure all QEMUs to use $hugetlbfs/libvirt/qemu
e9d682
for their hugepages setup. This was problematic, because it did
e9d682
not allow enough separation between guests. Therefore in
e9d682
v3.0.0-rc1~367 the path changed to a per-domain basis:
e9d682
e9d682
  $hugetlbfs/libvirt/qemu/$domainShortName
e9d682
e9d682
And to help with migration on daemon restart a call to
e9d682
qemuProcessBuildDestroyMemoryPaths() was added to
e9d682
qemuProcessReconnect() (well, it was named
e9d682
qemuProcessBuildDestroyHugepagesPath() back then, see
e9d682
v3.10.0-rc1~174). This was desirable then, because the memory
e9d682
hotplug code did not call the function, it simply assumes
e9d682
per-domain paths to exist. But this changed in v3.5.0-rc1~92
e9d682
after which the per-domain paths are created on memory hotplug
e9d682
too.
e9d682
e9d682
Therefore, it's no longer necessary to create these paths in
e9d682
qemuProcessReconnect(). They are created exactly when needed
e9d682
(domain startup and memory hotplug).
e9d682
e9d682
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
e9d682
Reviewed-by: Ján Tomko <jtomko@redhat.com>
e9d682
(cherry picked from commit 3478cca80ea7382cfdbff836d5d0b92aa014297b)
e9d682
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=2152083
e9d682
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
e9d682
---
e9d682
 src/qemu/qemu_process.c | 3 ---
e9d682
 1 file changed, 3 deletions(-)
e9d682
e9d682
diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c
e9d682
index 062a0b6dac..979ad99f5a 100644
e9d682
--- a/src/qemu/qemu_process.c
e9d682
+++ b/src/qemu/qemu_process.c
e9d682
@@ -9004,9 +9004,6 @@ qemuProcessReconnect(void *opaque)
e9d682
         goto cleanup;
e9d682
     }
e9d682
 
e9d682
-    if (qemuProcessBuildDestroyMemoryPaths(driver, obj, NULL, true) < 0)
e9d682
-        goto error;
e9d682
-
e9d682
     if ((qemuDomainAssignAddresses(obj->def, priv->qemuCaps,
e9d682
                                    driver, obj, false)) < 0) {
e9d682
         goto error;
e9d682
-- 
e9d682
2.39.0
e9d682