hw/virtio: Free vqs after vhost_dev_cleanup()
authorAkihiko Odaki <akihiko.odaki@daynix.com>
Thu, 27 Jun 2024 13:37:50 +0000 (22:37 +0900)
committerMichael S. Tsirkin <mst@redhat.com>
Mon, 1 Jul 2024 21:16:05 +0000 (17:16 -0400)
This fixes LeakSanitizer warnings.

Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Message-Id: <20240627-san-v2-7-750bb0946dbd@daynix.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
hw/virtio/vhost-user-base.c

index 11e72b1e3ba42bb83464f288d04528003ae9f561..2bc3423326e500c39c2dc5c8cd2a46a3ea853fbc 100644 (file)
@@ -223,6 +223,7 @@ static void vub_disconnect(DeviceState *dev)
 {
     VirtIODevice *vdev = VIRTIO_DEVICE(dev);
     VHostUserBase *vub = VHOST_USER_BASE(vdev);
+    struct vhost_virtqueue *vhost_vqs = vub->vhost_dev.vqs;
 
     if (!vub->connected) {
         goto done;
@@ -231,6 +232,7 @@ static void vub_disconnect(DeviceState *dev)
 
     vub_stop(vdev);
     vhost_dev_cleanup(&vub->vhost_dev);
+    g_free(vhost_vqs);
 
 done:
     /* Re-instate the event handler for new connections */