OSDN Git Service

virtio: reset region cache when on queue deletion
authorYuri Benditovich <yuri.benditovich@daynix.com>
Thu, 26 Dec 2019 04:36:48 +0000 (06:36 +0200)
committerMichael S. Tsirkin <mst@redhat.com>
Mon, 6 Jan 2020 17:04:51 +0000 (12:04 -0500)
https://bugzilla.redhat.com/show_bug.cgi?id=1708480
Fix leak of region reference that prevents complete
device deletion on hot unplug.

Cc: qemu-stable@nongnu.org
Signed-off-by: Yuri Benditovich <yuri.benditovich@daynix.com>
Message-Id: <20191226043649.14481-2-yuri.benditovich@daynix.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
hw/virtio/virtio.c

index 95d8ff8..7b861e0 100644 (file)
@@ -2344,6 +2344,7 @@ void virtio_delete_queue(VirtQueue *vq)
     vq->handle_aio_output = NULL;
     g_free(vq->used_elems);
     vq->used_elems = NULL;
+    virtio_virtqueue_reset_region_cache(vq);
 }
 
 void virtio_del_queue(VirtIODevice *vdev, int n)