summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorStefano Garzarella <sgarzare@redhat.com>2021-11-02 16:51:57 +0100
committerMichael S. Tsirkin <mst@redhat.com>2021-11-11 03:13:05 -0500
commitcd523a4181b152004fc0aed18381aefe600ac38e (patch)
treef16b8e49659abb036042fef34722fb300b7f2eb4
parent0a70bcf18caf7a61d480f8448723c15209d128ef (diff)
downloadfocaccia-qemu-cd523a4181b152004fc0aed18381aefe600ac38e.tar.gz
focaccia-qemu-cd523a4181b152004fc0aed18381aefe600ac38e.zip
net/vhost-vdpa: fix memory leak in vhost_vdpa_get_max_queue_pairs()
Use g_autofree to ensure that `config` is freed when
vhost_vdpa_get_max_queue_pairs() returns.

Reported-by: Coverity (CID 1465228: RESOURCE_LEAK)
Fixes: 402378407d ("vhost-vdpa: multiqueue support")
Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
Message-Id: <20211102155157.241034-1-sgarzare@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Acked-by: Jason Wang <jasowang@redhat.com>
-rw-r--r--net/vhost-vdpa.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/vhost-vdpa.c b/net/vhost-vdpa.c
index 49ab322511..373b706b90 100644
--- a/net/vhost-vdpa.c
+++ b/net/vhost-vdpa.c
@@ -214,7 +214,7 @@ static NetClientState *net_vhost_vdpa_init(NetClientState *peer,
 static int vhost_vdpa_get_max_queue_pairs(int fd, int *has_cvq, Error **errp)
 {
     unsigned long config_size = offsetof(struct vhost_vdpa_config, buf);
-    struct vhost_vdpa_config *config;
+    g_autofree struct vhost_vdpa_config *config = NULL;
     __virtio16 *max_queue_pairs;
     uint64_t features;
     int ret;