From: Eugenio Pérez Date: Tue, 23 Aug 2022 18:20:02 +0000 (+0200) Subject: vdpa: Skip the maps not in the iova tree X-Git-Tag: v7.2.0-rc0~97^2~20 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=10dab9f2635b9bab23a2b29974b526e62bb61268;p=thirdparty%2Fqemu.git vdpa: Skip the maps not in the iova tree Next patch will skip the registering of dma maps that the vdpa device rejects in the iova tree. We need to consider that here or we cause a SIGSEGV accessing result. Reported-by: Lei Yang Signed-off-by: Eugenio Pérez Acked-by: Jason Wang Signed-off-by: Jason Wang --- diff --git a/hw/virtio/vhost-vdpa.c b/hw/virtio/vhost-vdpa.c index 3ff9ce35010..983d3697b01 100644 --- a/hw/virtio/vhost-vdpa.c +++ b/hw/virtio/vhost-vdpa.c @@ -289,6 +289,10 @@ static void vhost_vdpa_listener_region_del(MemoryListener *listener, }; result = vhost_iova_tree_find_iova(v->iova_tree, &mem_region); + if (!result) { + /* The memory listener map wasn't mapped */ + return; + } iova = result->iova; vhost_iova_tree_remove(v->iova_tree, result); }