[PATCH] app/test-fib: enable test-fib on Windows

2025-01-04 Thread Andre Muezerie
Removed a few includes which were not needed and included rte_os_shim.h to handle strtok_r which does not exist on Windows with that exact name. Signed-off-by: Andre Muezerie --- app/test-fib/main.c | 8 ++-- app/test-fib/meson.build | 6 -- 2 files changed, 6 insertions(+), 8 delet

[PATCH v13 00/21] remove use of VLAs for Windows

2025-01-04 Thread Andre Muezerie
As per guidance technical board meeting 2024/04/17. This series removes the use of VLAs from code built for Windows for all 3 toolchains. If there are additional opportunities to convert VLAs to regular C arrays please provide the details for incorporation into the series. MSVC does not support VL

[PATCH v13 01/21] eal: include header required for alloca

2025-01-04 Thread Andre Muezerie
From: Tyler Retzlaff Include alloca.h for Linux and malloc.h for Windows to get declaration of alloca(). Signed-off-by: Tyler Retzlaff --- lib/eal/freebsd/include/rte_os.h | 1 + lib/eal/linux/include/rte_os.h | 1 + lib/eal/windows/include/rte_os.h | 1 + 3 files changed, 3 insertions(+) d

[PATCH v13 11/21] net/ice: remove use of VLAs

2025-01-04 Thread Andre Muezerie
From: Konstantin Ananyev ../drivers/net/ice/ice_rxtx.c:1871:29: warning: variable length array used [-Wvla] Here VLA is used as a temp array for mbufs that will be used as a split RX data buffers. As at any given time only one thread can do RX from particular queue, at rx_queue_setup() we ca

[PATCH v13 10/21] net/ixgbe: remove use of VLAs

2025-01-04 Thread Andre Muezerie
From: Konstantin Ananyev 1) ../drivers/net/ixgbe/ixgbe_ethdev.c:3556:46: warning: variable length array used [-Wvla] 2) ../drivers/net/ixgbe/ixgbe_ethdev.c:3739:23: warning: variable length array used [-Wvla] 3) ../drivers/net/ixgbe/ixgbe_rxtx_vec_common.h:17:24: warning: variable len

[PATCH v13 14/21] common/idpf: remove use of VLAs for Windows built code

2025-01-04 Thread Andre Muezerie
From: Tyler Retzlaff MSVC does not support VLAs, replace VLAs with standard C arrays or alloca(). alloca() is available for all toolchain/platform combinations officially supported by DPDK. Signed-off-by: Tyler Retzlaff Acked-by: Bruce Richardson --- drivers/common/idpf/idpf_common_rxtx.c

[PATCH v13 05/21] hash: remove use of VLAs for Windows built code

2025-01-04 Thread Andre Muezerie
From: Konstantin Ananyev 1) ./lib/hash/rte_cuckoo_hash.c:2362:9 : warning: ISO C90 forbids variable length array ‘positions’ 2) ../lib/hash/rte_cuckoo_hash.c:2478:9 : warning: ISO C90 forbids variable length array ‘positions’ Both rte_hash_lookup_bulk_data() and rte_hash_lookup_with_hash

[PATCH v13 07/21] rcu: remove use of VLAs for Windows built code

2025-01-04 Thread Andre Muezerie
From: Konstantin Ananyev 1) ./lib/rcu/rte_rcu_qsbr.c:359:9 : warning: ISO C90 forbids variable length array ‘data’ [-Wvla] 2) ./lib/rcu/rte_rcu_qsbr.c:422:9 : warning: ISO C90 forbids variable length array ‘data’ [-Wvla] In both cases we allocate VLA for one element from RCU deferred que

[PATCH v13 09/21] gro: remove use of VLAs

2025-01-04 Thread Andre Muezerie
From: Konstantin Ananyev ../lib/gro/rte_gro.c:182:34: warning: variable length array used [-Wvla] ../lib/gro/rte_gro.c:363:34: warning: variable length array used [-Wvla] In both cases the pattern is the same: we use unprocess_pkts[nb_pkts] to collect un-used by GRO packets, and then cop

[PATCH v13 02/21] eal/linux: remove use of VLAs

2025-01-04 Thread Andre Muezerie
From: Konstantin Ananyev 1) ./lib/eal/linux/eal_interrupts.c:1073:16 : warning: ISO C90 forbids variable length array ‘events’ MSVC does not support VLAs. Use alloca() to allocate the memory on the stack. 2) ./lib/eal/linux/eal_interrupts.c:1319:16 : warning: ISO C90 forbids variable le

[PATCH v13 03/21] eal/common: remove use of VLAs

2025-01-04 Thread Andre Muezerie
From: Konstantin Ananyev 1) ../lib/eal/common/eal_common_proc.c:695:15 : warning: variable length array used As msg->num_fds should not exceed RTE_MP_MAX_FD_NUM, replaced it with fixed size array. Signed-off-by: Konstantin Ananyev Acked-by: Stephen Hemminger --- lib/eal/common/eal_common

[PATCH v13 12/21] app/testpmd: remove use of VLAs for Windows built

2025-01-04 Thread Andre Muezerie
From: Tyler Retzlaff MSVC does not support VLAs, replace VLAs with standard C arrays or alloca(). alloca() is available for all toolchain/platform combinations officially supported by DPDK. Signed-off-by: Tyler Retzlaff Acked-by: Chengwen Feng --- app/test-pmd/cmdline.c | 2 +- app/test

[PATCH v13 06/21] hash/thash: remove use of VLAs for Windows built

2025-01-04 Thread Andre Muezerie
From: Konstantin Ananyev 1) ./lib/hash/rte_thash.c:774:9 : warning: ISO C90 forbids variable length array ‘tmp_tuple’ The tuple can exceed sizeof(union rte_thash_tuple), for example if any tunneling header is used in the RSS hash calculation. The longest RSS hash key currently supported is

[PATCH v13 08/21] gro: fix overwrite unprocessed packets

2025-01-04 Thread Andre Muezerie
From: Konstantin Ananyev gro_vxlan_tcp4_tbl_timeout_flush() is called without taking into account that first entries in pkts[] can be already occupied by un-processed packets. Fixes: 74080d7dcf31 ("gro: support IPv6 for TCP") Cc: sta...@dpdk.org Signed-off-by: Konstantin Ananyev Acked-by: Ferr

[PATCH v13 13/21] test: remove use of VLAs for Windows built code

2025-01-04 Thread Andre Muezerie
From: Tyler Retzlaff MSVC does not support VLAs, replace VLAs with standard C arrays or alloca(). alloca() is available for all toolchain/platform combinations officially supported by DPDK. Signed-off-by: Tyler Retzlaff Acked-by: Chengwen Feng --- app/test/test.c | 2 +-

[PATCH v13 19/21] test: remove use of VLAs for Windows built code in bitset tests

2025-01-04 Thread Andre Muezerie
1) MSVC does not support VLAs. Use standard fixed C arrays of maximum size required instead. 2) ../usr/lib/gcc/x86_64-redhat-linux/13/include/emmintrin.h:742:8: error: array subscript 9 is outside array bounds of 'uint64_t[16]' {aka 'long unsigned int[16]'} [-Werror=array-bounds=] 3695

[PATCH v13 18/21] build: enable vla warnings on Windows built code

2025-01-04 Thread Andre Muezerie
From: Tyler Retzlaff MSVC does not support optional C11 VLAs. When building for Windows enable -Wvla so that mingw and clang also fail if a VLA is used. Signed-off-by: Tyler Retzlaff Acked-by: Bruce Richardson Acked-by: Chengwen Feng --- config/meson.build | 4 1 file changed, 4 inserti

[PATCH v13 20/21] app/testpmd: remove use of VLAs for Windows built code in shared_rxq_fwd

2025-01-04 Thread Andre Muezerie
MSVC does not support VLAs, replace VLAs with standard C arrays or alloca(). alloca() is available for all toolchain/platform combinations officially supported by DPDK. Signed-off-by: Andre Muezerie Acked-by: Chengwen Feng --- app/test-pmd/shared_rxq_fwd.c | 2 +- 1 file changed, 1 insertion(+)

[PATCH v13 17/21] net/mlx5: remove use of VLAs for Windows built code

2025-01-04 Thread Andre Muezerie
From: Tyler Retzlaff MSVC does not support VLAs, replace VLAs with standard C arrays or alloca(). alloca() is available for all toolchain/platform combinations officially supported by DPDK. Signed-off-by: Tyler Retzlaff --- drivers/net/mlx5/mlx5.c | 5 ++--- drivers/net/mlx5/mlx5_flow.c |

[PATCH v13 21/21] hash: remove use of VLAs by using standard arrays

2025-01-04 Thread Andre Muezerie
MSVC does not support VLAs, replace VLAs with standard C arrays. Signed-off-by: Andre Muezerie --- lib/hash/rte_thash_gf2_poly_math.c | 9 - 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/lib/hash/rte_thash_gf2_poly_math.c b/lib/hash/rte_thash_gf2_poly_math.c index 1c6297

[PATCH v13 16/21] common/mlx5: remove use of VLAs for Windows built code

2025-01-04 Thread Andre Muezerie
From: Tyler Retzlaff MSVC does not support VLAs, replace VLAs with standard C arrays or alloca(). alloca() is available for all toolchain/platform combinations officially supported by DPDK. Signed-off-by: Tyler Retzlaff --- drivers/common/mlx5/mlx5_common.h| 4 ++-- drivers/common/mlx5/mlx

[PATCH v13 15/21] net/i40e: remove use of VLAs for Windows built code

2025-01-04 Thread Andre Muezerie
From: Tyler Retzlaff MSVC does not support VLAs, replace VLAs with standard C arrays or alloca(). alloca() is available for all toolchain/platform combinations officially supported by DPDK. Signed-off-by: Tyler Retzlaff Reviewed-by: Bruce Richardson --- drivers/net/i40e/i40e_testpmd.c | 5 ++-

[PATCH v13 04/21] ethdev: remove use of VLAs for Windows built code

2025-01-04 Thread Andre Muezerie
From: Konstantin Ananyev 1) ./lib/ethdev/rte_ethdev.c:3244:16 : warning: ISO C90 forbids variable length array ‘xstats_names’ 2) ./lib/ethdev/rte_ethdev.c:3345:17 : warning: ISO C90 forbids variable length array ‘ids_copy’ 3) ./lib/ethdev/rte_ethdev.c:3538:16 : warning: ISO C90 forbid

Re: [PATCH 00/19] XSC PMD for Yunsilicon NICs

2025-01-04 Thread Stephen Hemminger
On Fri, 6 Sep 2024 20:13:46 +0800 "WanRenyong" wrote: > This xsc PMD (**librte_net_xsc**) provides poll mode driver for Yunsilicon > metaScale > serials NICs. > > Features: > - > - MTU update > - TSO > - RSS hash > - RSS key update > - RSS reta update > - L3 checksum offload > - L4 che