[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20260110184515-mutt-send-email-mst@kernel.org>
Date: Sat, 10 Jan 2026 18:46:23 -0500
From: "Michael S. Tsirkin" <mst@...hat.com>
To: Eugenio Pérez <eperezma@...hat.com>
Cc: linux-kernel@...r.kernel.org, virtualization@...ts.linux.dev,
Maxime Coquelin <mcoqueli@...hat.com>,
Laurent Vivier <lvivier@...hat.com>, Cindy Lu <lulu@...hat.com>,
jasowang@...hat.com, Xuan Zhuo <xuanzhuo@...ux.alibaba.com>,
Stefano Garzarella <sgarzare@...hat.com>,
Yongji Xie <xieyongji@...edance.com>
Subject: Re: [PATCH v11 04/12] vhost: move vdpa group bound check to
vhost_vdpa
On Fri, Jan 09, 2026 at 04:24:22PM +0100, Eugenio Pérez wrote:
> Remove duplication by consolidating these here. This reduces the
> posibility of a parent driver missing them.
>
> Signed-off-by: Eugenio Pérez <eperezma@...hat.com>
> ---
> drivers/vdpa/mlx5/net/mlx5_vnet.c | 3 ---
> drivers/vdpa/vdpa_sim/vdpa_sim.c | 6 ------
> drivers/vhost/vdpa.c | 2 +-
> 3 files changed, 1 insertion(+), 10 deletions(-)
>
> diff --git a/drivers/vdpa/mlx5/net/mlx5_vnet.c b/drivers/vdpa/mlx5/net/mlx5_vnet.c
> index ddaa1366704b..44062e9d68f0 100644
> --- a/drivers/vdpa/mlx5/net/mlx5_vnet.c
> +++ b/drivers/vdpa/mlx5/net/mlx5_vnet.c
> @@ -3640,9 +3640,6 @@ static int mlx5_set_group_asid(struct vdpa_device *vdev, u32 group,
> struct mlx5_vdpa_dev *mvdev = to_mvdev(vdev);
> int err = 0;
>
> - if (group >= MLX5_VDPA_NUMVQ_GROUPS)
> - return -EINVAL;
> -
> mvdev->mres.group2asid[group] = asid;
>
> mutex_lock(&mvdev->mres.lock);
> diff --git a/drivers/vdpa/vdpa_sim/vdpa_sim.c b/drivers/vdpa/vdpa_sim/vdpa_sim.c
> index c1c6431950e1..df9c7ddc5d78 100644
> --- a/drivers/vdpa/vdpa_sim/vdpa_sim.c
> +++ b/drivers/vdpa/vdpa_sim/vdpa_sim.c
> @@ -606,12 +606,6 @@ static int vdpasim_set_group_asid(struct vdpa_device *vdpa, unsigned int group,
> struct vhost_iotlb *iommu;
> int i;
>
> - if (group > vdpasim->dev_attr.ngroups)
> - return -EINVAL;
> -
BTW is the original ">" here an off by one error? Should have been >= ?
if yes then this is a kind of bugfix and maybe needs a fixes tag.
> - if (asid >= vdpasim->dev_attr.nas)
> - return -EINVAL;
> -
> iommu = &vdpasim->iommu[asid];
>
> mutex_lock(&vdpasim->mutex);
> diff --git a/drivers/vhost/vdpa.c b/drivers/vhost/vdpa.c
> index 05a481e4c385..9d25b735b43d 100644
> --- a/drivers/vhost/vdpa.c
> +++ b/drivers/vhost/vdpa.c
> @@ -680,7 +680,7 @@ static long vhost_vdpa_vring_ioctl(struct vhost_vdpa *v, unsigned int cmd,
> case VHOST_VDPA_SET_GROUP_ASID:
> if (copy_from_user(&s, argp, sizeof(s)))
> return -EFAULT;
> - if (s.num >= vdpa->nas)
> + if (idx >= vdpa->ngroups || s.num >= vdpa->nas)
> return -EINVAL;
> if (!ops->set_group_asid)
> return -EOPNOTSUPP;
> --
> 2.52.0
Powered by blists - more mailing lists