Re: [PATCH] vdpa_sim: use max_iotlb_entries as a limit in vhost_iotlb_init

From: Eugenio Perez Martin
Date: Fri Jul 08 2022 - 07:23:51 EST


On Tue, Jun 21, 2022 at 5:16 PM Stefano Garzarella <sgarzare@xxxxxxxxxx> wrote:
>
> Commit bda324fd037a ("vdpasim: control virtqueue support") changed
> the allocation of iotlbs calling vhost_iotlb_init() for each address
> space, instead of vhost_iotlb_alloc().
>
> With this change we forgot to use the limit we had introduced with
> the `max_iotlb_entries` module parameter.
>
> Fixes: bda324fd037a ("vdpasim: control virtqueue support")
> Cc: gautam.dawar@xxxxxxxxxx
> Signed-off-by: Stefano Garzarella <sgarzare@xxxxxxxxxx>

Acked-by: Eugenio Pérez <eperezma@xxxxxxxxxx>

> ---
> drivers/vdpa/vdpa_sim/vdpa_sim.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/vdpa/vdpa_sim/vdpa_sim.c b/drivers/vdpa/vdpa_sim/vdpa_sim.c
> index 0f2865899647..3e81532c01cb 100644
> --- a/drivers/vdpa/vdpa_sim/vdpa_sim.c
> +++ b/drivers/vdpa/vdpa_sim/vdpa_sim.c
> @@ -33,7 +33,7 @@ MODULE_PARM_DESC(batch_mapping, "Batched mapping 1 -Enable; 0 - Disable");
> static int max_iotlb_entries = 2048;
> module_param(max_iotlb_entries, int, 0444);
> MODULE_PARM_DESC(max_iotlb_entries,
> - "Maximum number of iotlb entries. 0 means unlimited. (default: 2048)");
> + "Maximum number of iotlb entries for each address space. 0 means unlimited. (default: 2048)");
>
> #define VDPASIM_QUEUE_ALIGN PAGE_SIZE
> #define VDPASIM_QUEUE_MAX 256
> @@ -291,7 +291,7 @@ struct vdpasim *vdpasim_create(struct vdpasim_dev_attr *dev_attr)
> goto err_iommu;
>
> for (i = 0; i < vdpasim->dev_attr.nas; i++)
> - vhost_iotlb_init(&vdpasim->iommu[i], 0, 0);
> + vhost_iotlb_init(&vdpasim->iommu[i], max_iotlb_entries, 0);
>
> vdpasim->buffer = kvmalloc(dev_attr->buffer_size, GFP_KERNEL);
> if (!vdpasim->buffer)
> --
> 2.36.1
>