[PATCH 2/5] qemuDomainChrRemove: Don't leak vmdef->consoles[0]

Michal Privoznik mprivozn at redhat.com
Wed Apr 12 14:25:07 UTC 2023


When removing the compat console from domain defintion, removing
it from the vmdef->consoles array is good, but not sufficient.
The console definition might have been fully allocated (after
daemon restarted and reloaded the status XML). Use
virDomainChrDefFree() to free also the definition.

Signed-off-by: Michal Privoznik <mprivozn at redhat.com>
---
 src/qemu/qemu_hotplug.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/qemu/qemu_hotplug.c b/src/qemu/qemu_hotplug.c
index f517646c55..a6407f074b 100644
--- a/src/qemu/qemu_hotplug.c
+++ b/src/qemu/qemu_hotplug.c
@@ -1937,8 +1937,10 @@ qemuDomainChrRemove(virDomainDef *vmdef,
             return NULL;
     }
 
-    if (removeCompat)
+    if (removeCompat) {
+        virDomainChrDefFree(vmdef->consoles[0]);
         VIR_DELETE_ELEMENT(vmdef->consoles, 0, vmdef->nconsoles);
+    }
 
     return ret;
 }
-- 
2.39.2



More information about the libvir-list mailing list