Re: [PATCH] vdpa/mlx5: fix endian-ness for max vqs

From: Eli Cohen
Date: Mon Jan 10 2022 - 00:26:09 EST


On Sat, Jan 08, 2022 at 01:00:43PM -0500, Michael S. Tsirkin wrote:
> sparse warnings: (new ones prefixed by >>)
> >> drivers/vdpa/mlx5/net/mlx5_vnet.c:1247:23: sparse: sparse: cast to restricted __le16
> >> drivers/vdpa/mlx5/net/mlx5_vnet.c:1247:23: sparse: sparse: cast from restricted __virtio16
>
> > 1247 num = le16_to_cpu(ndev->config.max_virtqueue_pairs);
>
> Address this using the appropriate wrapper.
>
> Fixes: 7620d51af29a ("vdpa/mlx5: Support configuring max data virtqueue")
> Cc: "Eli Cohen" <elic@xxxxxxxxxx>
> Reported-by: kernel test robot <lkp@xxxxxxxxx>
> Signed-off-by: Michael S. Tsirkin <mst@xxxxxxxxxx>
> ---

Reviewed-by: Eli Cohen <elic@xxxxxxxxxx>

> drivers/vdpa/mlx5/net/mlx5_vnet.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/vdpa/mlx5/net/mlx5_vnet.c b/drivers/vdpa/mlx5/net/mlx5_vnet.c
> index 84b1919015ce..d1ff65065fb1 100644
> --- a/drivers/vdpa/mlx5/net/mlx5_vnet.c
> +++ b/drivers/vdpa/mlx5/net/mlx5_vnet.c
> @@ -1242,7 +1242,8 @@ static int create_rqt(struct mlx5_vdpa_net *ndev)
> if (!(ndev->mvdev.actual_features & BIT_ULL(VIRTIO_NET_F_MQ)))
> num = 1;
> else
> - num = le16_to_cpu(ndev->config.max_virtqueue_pairs);
> + num = mlx5vdpa16_to_cpu(&ndev->mvdev,
> + ndev->config.max_virtqueue_pairs);
>
> max_rqt = min_t(int, roundup_pow_of_two(num),
> 1 << MLX5_CAP_GEN(ndev->mvdev.mdev, log_max_rqt_size));
> --
> MST
>