在 2022/8/4 23:54, Eugenio Pérez 写道:
> 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 <leiyang@redhat.com>
> Signed-off-by: Eugenio Pérez <eperezma@redhat.com>
Acked-by: Jason Wang <jasowang@redhat.com>
> ---
> hw/virtio/vhost-vdpa.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/hw/virtio/vhost-vdpa.c b/hw/virtio/vhost-vdpa.c
> index 3ff9ce3501..983d3697b0 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);
> }