This invalid free results in heap corruption. Some symptoms I saw because of this were libvirtd crashing and virt-manager hanging while trying to enumerate devices. --- src/node_device/node_device_driver.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) Index: libvirt-0.7.5/src/node_device/node_device_driver.c =================================================================== --- libvirt-0.7.5.orig/src/node_device/node_device_driver.c +++ libvirt-0.7.5/src/node_device/node_device_driver.c @@ -78,7 +78,7 @@ static int update_driver_name(virConnect virNodeDeviceObjPtr dev) { char *driver_link = NULL; - char *devpath; + char *devpath = NULL; char *p; int ret = -1; @@ -114,7 +114,7 @@ static int update_driver_name(virConnect cleanup: VIR_FREE(driver_link); - free(devpath); + VIR_FREE(devpath); return ret; } #else