]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
libxl: Free data returned from libxl_userdata_retrieve
authorJim Fehlig <jfehlig@suse.com>
Thu, 28 Oct 2021 21:58:16 +0000 (15:58 -0600)
committerJim Fehlig <jfehlig@suse.com>
Wed, 10 Nov 2021 18:15:36 +0000 (11:15 -0700)
Found via valgrind

==15016== 3,701 bytes in 2 blocks are definitely lost in loss record 975 of 1,009
==15016==    at 0x4C2A2AF: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==15016==    by 0x1FCD30CB: libxl_read_file_contents (in /usr/lib64/libxenlight.so.4.12.0)
==15016==    by 0x1FCCA58A: ??? (in /usr/lib64/libxenlight.so.4.12.0)
==15016==    by 0x1FCCA6C2: libxl_userdata_retrieve (in /usr/lib64/libxenlight.so.4.12.0)
==15016==    by 0x1FA42A5A: libxlReconnectDomain (libxl_driver.c:394)
==15016==    by 0x53BAC99: virDomainObjListHelper (virdomainobjlist.c:802)
==15016==    by 0x530842F: virHashForEach (virhash.c:575)
==15016==    by 0x53BC0E0: virDomainObjListForEach (virdomainobjlist.c:817)
==15016==    by 0x1FA423C4: libxlReconnectDomains (libxl_driver.c:468)
==15016==    by 0x1FA423C4: libxlStateInitialize (libxl_driver.c:778)
==15016==    by 0x54E8E9E: virStateInitialize (libvirt.c:657)
==15016==    by 0x12DBFA: daemonRunStateInit (remote_daemon.c:797)
==15016==    by 0x535BF79: virThreadHelper (virthread.c:206)

Signed-off-by: Jim Fehlig <jfehlig@suse.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
src/libxl/libxl_driver.c

index 7ea157f9c4fadf534dd572040630f335cab37f18..3f67cda9e93e565461d927bc33875b825a4fd758 100644 (file)
@@ -389,7 +389,7 @@ libxlReconnectDomain(virDomainObj *vm,
     int rc;
     libxl_dominfo d_info;
     int len;
-    uint8_t *data = NULL;
+    g_autofree uint8_t *data = NULL;
     virHostdevManager *hostdev_mgr = driver->hostdevMgr;
     unsigned int hostdev_flags = VIR_HOSTDEV_SP_PCI;
     int ret = -1;