render / rpms / libvirt

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