Using VIR_AUTOFREE() spare us from calling VIR_VREE() and
sometimes a whole 'cleanup' label can be erased as well.
There are quite a few strings in qemu_hotplug.c to be
auto-freed. This is the first part of this change.
Signed-off-by: Daniel Henrique Barboza
---
src/qemu/qemu_hotplug.c | 106 +---
1 file changed, 33 insertions(+), 73 deletions(-)
diff --git a/src/qemu/qemu_hotplug.c b/src/qemu/qemu_hotplug.c
index 62e505b779..5b1639b48d 100644
--- a/src/qemu/qemu_hotplug.c
+++ b/src/qemu/qemu_hotplug.c
@@ -136,20 +136,15 @@ static int
qemuDomainAttachZPCIDevice(qemuMonitorPtr mon,
virDomainDeviceInfoPtr info)
{
-char *devstr_zpci = NULL;
-int ret = -1;
+VIR_AUTOFREE(char *) devstr_zpci = NULL;
if (!(devstr_zpci = qemuBuildZPCIDevStr(info)))
-goto cleanup;
+return -1;
if (qemuMonitorAddDevice(mon, devstr_zpci) < 0)
-goto cleanup;
-
-ret = 0;
+return -1;
- cleanup:
-VIR_FREE(devstr_zpci);
-return ret;
+return 0;
}
@@ -157,20 +152,15 @@ static int
qemuDomainDetachZPCIDevice(qemuMonitorPtr mon,
virDomainDeviceInfoPtr info)
{
-char *zpciAlias = NULL;
-int ret = -1;
+VIR_AUTOFREE(char *) zpciAlias = NULL;
if (virAsprintf(, "zpci%d", info->addr.pci.zpci.uid) < 0)
-goto cleanup;
+return -1;
if (qemuMonitorDelDevice(mon, zpciAlias) < 0)
-goto cleanup;
-
-ret = 0;
+return -1;
- cleanup:
-VIR_FREE(zpciAlias);
-return ret;
+return 0;
}
@@ -517,7 +507,7 @@ qemuDomainChangeMediaBlockdev(virQEMUDriverPtr driver,
qemuDomainDiskPrivatePtr diskPriv = QEMU_DOMAIN_DISK_PRIVATE(disk);
VIR_AUTOPTR(qemuBlockStorageSourceChainData) newbackend = NULL;
VIR_AUTOPTR(qemuBlockStorageSourceChainData) oldbackend = NULL;
-char *nodename = NULL;
+VIR_AUTOFREE(char *) nodename = NULL;
int rc;
int ret = -1;
@@ -572,7 +562,6 @@ qemuDomainChangeMediaBlockdev(virQEMUDriverPtr driver,
ret = 0;
cleanup:
-VIR_FREE(nodename);
return ret;
}
@@ -823,7 +812,7 @@ int qemuDomainAttachControllerDevice(virQEMUDriverPtr
driver,
{
int ret = -1;
const char* type = virDomainControllerTypeToString(controller->type);
-char *devstr = NULL;
+VIR_AUTOFREE(char *) devstr = NULL;
qemuDomainObjPrivatePtr priv = vm->privateData;
virDomainDeviceDef dev = { VIR_DOMAIN_DEVICE_CONTROLLER,
{ .controller = controller } };
@@ -890,7 +879,6 @@ int qemuDomainAttachControllerDevice(virQEMUDriverPtr
driver,
if (ret != 0 && releaseaddr)
qemuDomainReleaseDeviceAddress(vm, >info);
-VIR_FREE(devstr);
return ret;
}
@@ -1156,8 +1144,8 @@ qemuDomainAttachNetDevice(virQEMUDriverPtr driver,
int *vhostfd = NULL;
size_t vhostfdSize = 0;
size_t queueSize = 0;
-char *nicstr = NULL;
-char *netstr = NULL;
+VIR_AUTOFREE(char *) nicstr = NULL;
+VIR_AUTOFREE(char *) netstr = NULL;
int ret = -1;
bool releaseaddr = false;
bool iface_connected = false;
@@ -1166,10 +1154,10 @@ qemuDomainAttachNetDevice(virQEMUDriverPtr driver,
VIR_AUTOUNREF(virQEMUDriverConfigPtr) cfg = virQEMUDriverGetConfig(driver);
virDomainCCWAddressSetPtr ccwaddrs = NULL;
size_t i;
-char *charDevAlias = NULL;
+VIR_AUTOFREE(char *) charDevAlias = NULL;
bool charDevPlugged = false;
bool netdevPlugged = false;
-char *netdev_name;
+VIR_AUTOFREE(char *) netdev_name = NULL;
virConnectPtr conn = NULL;
virErrorPtr save_err = NULL;
@@ -1499,8 +1487,6 @@ qemuDomainAttachNetDevice(virQEMUDriverPtr driver,
virErrorRestore(_err);
}
-VIR_FREE(nicstr);
-VIR_FREE(netstr);
for (i = 0; tapfd && i < tapfdSize; i++) {
VIR_FORCE_CLOSE(tapfd[i]);
if (tapfdName)
@@ -1515,7 +1501,6 @@ qemuDomainAttachNetDevice(virQEMUDriverPtr driver,
}
VIR_FREE(vhostfd);
VIR_FREE(vhostfdName);
-VIR_FREE(charDevAlias);
virObjectUnref(conn);
virDomainCCWAddressSetFree(ccwaddrs);
VIR_FORCE_CLOSE(slirpfd);
@@ -1539,7 +1524,6 @@ qemuDomainAttachNetDevice(virQEMUDriverPtr driver,
VIR_WARN("Failed to remove network backend for netdev %s",
netdev_name);
ignore_value(qemuDomainObjExitMonitor(driver, vm));
-VIR_FREE(netdev_name);
}
virErrorRestore();
goto cleanup;
@@ -1556,7 +1540,7 @@ qemuDomainAttachHostPCIDevice(virQEMUDriverPtr driver,
{ .hostdev = hostdev } };
virDomainDeviceInfoPtr info = hostdev->info;
int ret;
-char *devstr = NULL;
+VIR_AUTOFREE(char *) devstr = NULL;
bool releaseaddr = false;
bool teardowncgroup = false;
bool teardownlabel = false;
@@ -1658,8 +1642,6 @@ qemuDomainAttachHostPCIDevice(virQEMUDriverPtr driver,