[libvirt] [PATCH 4/7] qemu: Alter error path cleanup for qemuDomainAttachChrDevice

Ján Tomko jtomko at redhat.com
Tue Jul 19 10:35:43 UTC 2016


On Fri, Jul 15, 2016 at 07:50:24AM -0400, John Ferlan wrote:
>Based on recent review comment - rather than have a spate of goto failxxxx,
>change to a boolean based model. Ensures that the original error can be
>preserved and cleanup is a bit more orderly if more objects are added.
>
>Signed-off-by: John Ferlan <jferlan at redhat.com>
>---
> src/qemu/qemu_hotplug.c | 19 ++++++++++++++-----
> 1 file changed, 14 insertions(+), 5 deletions(-)
>
>diff --git a/src/qemu/qemu_hotplug.c b/src/qemu/qemu_hotplug.c
>index 0fc0084..a220d9f 100644
>--- a/src/qemu/qemu_hotplug.c
>+++ b/src/qemu/qemu_hotplug.c
>@@ -1514,9 +1514,11 @@ int qemuDomainAttachChrDevice(virQEMUDriverPtr driver,
> {
>     int ret = -1, rc;
>     qemuDomainObjPrivatePtr priv = vm->privateData;
>+    virErrorPtr orig_err;
>     virDomainDefPtr vmdef = vm->def;
>     char *devstr = NULL;
>     char *charAlias = NULL;
>+    bool cleanupAttachCharDev = false;
>     bool need_release = false;
>
>     if (chr->deviceType == VIR_DOMAIN_CHR_DEVICE_TYPE_CHANNEL &&
>@@ -1542,10 +1544,11 @@ int qemuDomainAttachChrDevice(virQEMUDriverPtr driver,
>
>     qemuDomainObjEnterMonitor(driver, vm);
>     if (qemuMonitorAttachCharDev(priv->mon, charAlias, &chr->source) < 0)
>-        goto failchardev;
>+        goto monitor_error;
>+    cleanupAttachCharDev = true;

chardevAttached?

Jan




More information about the libvir-list mailing list