[libvirt] [PATCH 1/1] qemu_hotplug: use VIR_AUTOUNREF() with virConnectPtr

Daniel Henrique Barboza danielhb413 at gmail.com
Thu Oct 17 12:50:45 UTC 2019


Well, this one didn't age well. I'll see if I can get a 'due dilligence' 
going
in qemu_hotplug.c like I did with qemu_driver.c to replace it.


Thanks,

DHB

On 9/30/19 3:53 PM, Daniel Henrique Barboza wrote:
> Signed-off-by: Daniel Henrique Barboza <danielhb413 at gmail.com>
> ---
>
> Checked other pointer types that can be autounref as well,
> just found these instances.
>
>   src/qemu/qemu_hotplug.c | 22 ++++++++--------------
>   1 file changed, 8 insertions(+), 14 deletions(-)
>
> diff --git a/src/qemu/qemu_hotplug.c b/src/qemu/qemu_hotplug.c
> index e9285f0964..4cab132901 100644
> --- a/src/qemu/qemu_hotplug.c
> +++ b/src/qemu/qemu_hotplug.c
> @@ -1154,7 +1154,7 @@ qemuDomainAttachNetDevice(virQEMUDriverPtr driver,
>       bool charDevPlugged = false;
>       bool netdevPlugged = false;
>       VIR_AUTOFREE(char *) netdev_name = NULL;
> -    virConnectPtr conn = NULL;
> +    VIR_AUTOUNREF(virConnectPtr) conn = NULL;
>       virErrorPtr save_err = NULL;
>   
>       /* preallocate new slot for device */
> @@ -1497,7 +1497,6 @@ qemuDomainAttachNetDevice(virQEMUDriverPtr driver,
>       }
>       VIR_FREE(vhostfd);
>       VIR_FREE(vhostfdName);
> -    virObjectUnref(conn);
>       virDomainCCWAddressSetFree(ccwaddrs);
>       VIR_FORCE_CLOSE(slirpfd);
>   
> @@ -3475,7 +3474,7 @@ qemuDomainChangeNet(virQEMUDriverPtr driver,
>       bool needVlanUpdate = false;
>       int ret = -1;
>       int changeidx = -1;
> -    virConnectPtr conn = NULL;
> +    VIR_AUTOUNREF(virConnectPtr) conn = NULL;
>       virErrorPtr save_err = NULL;
>   
>       if ((changeidx = virDomainNetFindIdx(vm->def, newdev)) < 0)
> @@ -3919,7 +3918,6 @@ qemuDomainChangeNet(virQEMUDriverPtr driver,
>        */
>       if (newdev && newdev->type == VIR_DOMAIN_NET_TYPE_NETWORK && conn)
>           virDomainNetReleaseActualDevice(conn, vm->def, newdev);
> -    virObjectUnref(conn);
>       virErrorRestore(&save_err);
>   
>       return ret;
> @@ -4535,13 +4533,11 @@ qemuDomainRemoveHostDevice(virQEMUDriverPtr driver,
>   
>       if (net) {
>           if (net->type == VIR_DOMAIN_NET_TYPE_NETWORK) {
> -            virConnectPtr conn = virGetConnectNetwork();
> -            if (conn) {
> +            VIR_AUTOUNREF(virConnectPtr) conn = virGetConnectNetwork();
> +            if (conn)
>                   virDomainNetReleaseActualDevice(conn, vm->def, net);
> -                virObjectUnref(conn);
> -            } else {
> +            else
>                   VIR_WARN("Unable to release network device '%s'", NULLSTR(net->ifname));
> -            }
>           }
>           virDomainNetDefFree(net);
>       }
> @@ -4641,13 +4637,11 @@ qemuDomainRemoveNetDevice(virQEMUDriverPtr driver,
>       qemuDomainNetDeviceVportRemove(net);
>   
>       if (net->type == VIR_DOMAIN_NET_TYPE_NETWORK) {
> -        virConnectPtr conn = virGetConnectNetwork();
> -        if (conn) {
> +        VIR_AUTOUNREF(virConnectPtr) conn = virGetConnectNetwork();
> +        if (conn)
>               virDomainNetReleaseActualDevice(conn, vm->def, net);
> -            virObjectUnref(conn);
> -        } else {
> +        else
>               VIR_WARN("Unable to release network device '%s'", NULLSTR(net->ifname));
> -        }
>       }
>       virDomainNetDefFree(net);
>       return 0;




More information about the libvir-list mailing list