18/08/2025 08:32, Raslan Darawsheh:
> On 31/07/2025 9:08 AM, Gregory Etelson wrote:
> > mlx5_ext_rxq_get() and mlx5_ext_txq_get() functions did not return
> > NULL value if query index was not referencing external queue.
> >
> > As a result, calling functions did not expect the NULL on return.
It is not clear what is the problem.
> > External Rx queue:
> >
> > - In mlx5_ext_rxq_get() remove assert and return NULL if a queue index
> > does not point to a valid external queue.
> >
> > - In mlx5_ext_rxq_verify() validate that probed queue index references
> > a valid extern queue.
> >
> > External Tx queue:
> >
> > - In mlx5_ext_txq_get() remove assert and return NULL if a queue index
> > does not point to a valid external queue.
> >
> > - In mlx5_ext_txq_verify() validate that probed queue index references
> > a valid extern queue.
> >
> > Fixes: 311b17e669ab ("net/mlx5: support queue/RSS actions for external Rx
> > queue")
> >
> > Signed-off-by: Gregory Etelson <[email protected]>
> > Acked-by: Dariusz Sosnowski <[email protected]>
>
> Patch applied to next-net-mlx,
The patch is returning NULL but it is not handled in calling functions.
Thus MinGW compiler detects a problem:
In function 'mlx5_ext_rxq_ref',
inlined from 'mlx5_rxqs_ref' at
../../dpdk/drivers/net/mlx5/mlx5_rxq.c:2303:8:
../../dpdk/lib/eal/include/rte_stdatomic.h:155:9: error: '__atomic_fetch_add_4'
writing 4 bytes into a region of size 0 overflows the destination
[-Werror=stringop-overflow=]
155 | __atomic_fetch_add(ptr, val, memorder)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../dpdk/drivers/net/mlx5/mlx5_rxq.c:2215:9: note: in expansion of macro
'rte_atomic_fetch_add_explicit'
2215 | rte_atomic_fetch_add_explicit(&rxq->refcnt, 1,
rte_memory_order_relaxed);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'mlx5_rxqs_ref':
cc1: note: destination object is likely at address zero
I dropped this patch while pulling next-net-mlx into main.
Please provide a new version of the patch addressing these issues.
Thanks