[dpdk-stable] [dpdk-dev] [PATCH] common/mlx5: fix compilation for zero-length array

Raslan Darawsheh rasland at nvidia.com
Wed Nov 10 09:49:18 CET 2021


Hi,

> -----Original Message-----
> From: dev <dev-bounces at dpdk.org> On Behalf Of Matan Azrad
> Sent: Monday, November 8, 2021 2:22 PM
> To: Slava Ovsiienko <viacheslavo at nvidia.com>
> Cc: dev at dpdk.org; stable at dpdk.org
> Subject: [dpdk-dev] [PATCH] common/mlx5: fix compilation for zero-length
> array
> 
> The structure of the striding RQ(MPRQ) buffer includes an array size
> defined by the RTE_PKTMBUF_HEADROOM macro added in [1].
> 
> When RTE_PKTMBUF_HEADROOM is set to 0 in the compilation config file
> the
> the compilation with debug type failed:
> 
> "In file included from ../drivers/common/mlx5/mlx5_common.h:25,
>                  from ../drivers/common/mlx5/linux/mlx5_nl.h:12,
>                  from ../drivers/common/mlx5/linux/mlx5_nl.c:22:
> ../drivers/common/mlx5/mlx5_common_mr.h:96:10: error: ISO C forbids
>                              zero-size array 'pad' [-Werror=pedantic]"
> 
> Actually, the array for the first stride headroom is not needed:
> 
> Each stride in the striding RQ buffer includes the headroom of the next
> stride, so the headroom of the first stride should be allocated before
> the starting point of the buffer posted to the HW(HW buffer).
> 
> The striding RQ buffer is used as an attached buffer to mbuf and have
> shared information per stride.
> 
> The LRO support moved all the strides shared information to the top of
> the buffer before the first stride headroom but didn't remove the old
> memory of this headroom from the buffer.
> 
> Remove the old headroom memory from the striding RQ buffer.
> 
> Fixes: 3a22f3877c9d ("net/mlx5: replace external mbuf shared memory")
> Cc: stable at dpdk.org
> 
> [1] commit 7d6bf6b866b8 ("net/mlx5: add Multi-Packet Rx support")
> 
> Signed-off-by: Matan Azrad <matan at nvidia.com>
> Acked-by: Viacheslav Ovsiienko <viacheslavo at nvidia.com>

Patch applied to next-net-mlx,

Kindest regards,
Raslan Darawsheh


More information about the stable mailing list