Although the device will be reset before usage, the right thing to do is to clean it.
Reported-by: Lei Yang <leiy...@redhat.com> Fixes: 34e3c94eda ("vdpa: Add custom IOTLB translations to SVQ") Signed-off-by: Eugenio Pérez <epere...@redhat.com> --- hw/virtio/vhost-vdpa.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/hw/virtio/vhost-vdpa.c b/hw/virtio/vhost-vdpa.c index 7e28d2f674..943799c17c 100644 --- a/hw/virtio/vhost-vdpa.c +++ b/hw/virtio/vhost-vdpa.c @@ -898,7 +898,12 @@ static bool vhost_vdpa_svq_unmap_ring(struct vhost_vdpa *v, size = ROUND_UP(result->size, qemu_real_host_page_size()); r = vhost_vdpa_dma_unmap(v, result->iova, size); - return r == 0; + if (unlikely(r < 0)) { + return false; + } + + vhost_iova_tree_remove(v->iova_tree, result); + return 0; } static bool vhost_vdpa_svq_unmap_rings(struct vhost_dev *dev, -- 2.31.1