Messages in this thread Patch in this message | | | From | Jason Wang <> | Subject | [PATCH 3/4] vdpa: get_iova_range() is mandatory for device specific DMA translation | Date | Wed, 17 Jun 2020 11:29:46 +0800 |
| |
In order to let userspace work correctly, get_iova_range() is a must for the device that has its own DMA translation logic.
Signed-off-by: Jason Wang <jasowang@redhat.com> --- drivers/vdpa/vdpa.c | 4 ++++ 1 file changed, 4 insertions(+)
diff --git a/drivers/vdpa/vdpa.c b/drivers/vdpa/vdpa.c index de211ef3738c..ab7af978ef70 100644 --- a/drivers/vdpa/vdpa.c +++ b/drivers/vdpa/vdpa.c @@ -82,6 +82,10 @@ struct vdpa_device *__vdpa_alloc_device(struct device *parent, if (!!config->dma_map != !!config->dma_unmap) goto err; + if ((config->dma_map || config->set_map) && + !config->get_iova_range) + goto err; + err = -ENOMEM; vdev = kzalloc(size, GFP_KERNEL); if (!vdev) -- 2.20.1
| |