qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 4/7] vdpa: Remove SVQ vring from iova_tree at shutdown


From: Jason Wang
Subject: Re: [PATCH 4/7] vdpa: Remove SVQ vring from iova_tree at shutdown
Date: Tue, 23 Aug 2022 14:25:37 +0800
User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:91.0) Gecko/20100101 Thunderbird/91.12.0


在 2022/8/20 00:53, Eugenio Pérez 写道:
Although the device will be reset before usage, the right thing to do is
to clean it.

Reported-by: Lei Yang <leiyang@redhat.com>
Fixes: 34e3c94eda ("vdpa: Add custom IOTLB translations to SVQ")
Signed-off-by: Eugenio Pérez <eperezma@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-vdpa_svq_map_ring() will call error_report() here, should we do the same?

    if (unlikely(r != 0)) {
        error_setg_errno(errp, -r, "Cannot map region to device");

(Btw the error is not very informative, we should dump the map it self at least?)

Thanks


+    }
+
+    vhost_iova_tree_remove(v->iova_tree, result);
+    return 0;
  }
static bool vhost_vdpa_svq_unmap_rings(struct vhost_dev *dev,




reply via email to

[Prev in Thread] Current Thread [Next in Thread]