[dpdk-dev] [PATCH] net/mlx5: fix the alloc size of rqt attribute

Slava Ovsiienko viacheslavo at mellanox.com
Tue Oct 8 11:41:31 CEST 2019


> -----Original Message-----
> From: dev <dev-bounces at dpdk.org> On Behalf Of Ori Kam
> Sent: Thursday, September 26, 2019 13:22
> To: Matan Azrad <matan at mellanox.com>
> Cc: dev at dpdk.org; Ori Kam <orika at mellanox.com>; Dekel Peled
> <dekelp at mellanox.com>
> Subject: [dpdk-dev] [PATCH] net/mlx5: fix the alloc size of rqt attribute
> 
> The receive queues list size is based on the size of uint32_t, so when
> allocating the memory, the correct value should be used. Or else there is risk
> to corrupt the memory, depending on the queues number, because there is
> some pad area for alignment. If the queue number is not large enough, the
> issue couldn't be observed.
> 
> Based on Bing fix.
> 
> Fixes: dc9ceff73c99 ("net/mlx5: create advanced RxQ via DevX")
> Cc: dekelp at mellanox.com
> 
> Signed-off-by: Ori Kam <orika at mellanox.com>
Acked-by: Viacheslav Ovsiienko <viacheslavo at mellanox.com>

> ---
>  drivers/net/mlx5/mlx5_rxq.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/net/mlx5/mlx5_rxq.c b/drivers/net/mlx5/mlx5_rxq.c index
> a1fdeef..0db065a 100644
> --- a/drivers/net/mlx5/mlx5_rxq.c
> +++ b/drivers/net/mlx5/mlx5_rxq.c
> @@ -1936,7 +1936,7 @@ struct mlx5_rxq_ctrl *
>  		struct mlx5_devx_rqt_attr *rqt_attr = NULL;
> 
>  		rqt_attr = rte_calloc(__func__, 1, sizeof(*rqt_attr) +
> -				      queues_n * sizeof(uint16_t), 0);
> +				      queues_n * sizeof(uint32_t), 0);
>  		if (!rqt_attr) {
>  			DRV_LOG(ERR, "port %u cannot allocate RQT
> resources",
>  				dev->data->port_id);
> --
> 1.8.3.1



More information about the dev mailing list