[PATCH v8 00/21] remove use of VLAs for Windows
Andre Muezerie
andremue at linux.microsoft.com
Wed Nov 20 01:37:07 CET 2024
From: Andre Muezerie <andremue at ntdev.microsoft.com>
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 VLAs, replace VLAs with standard C arrays
or alloca(). alloca() is available for all toolchain/platform
combinations officially supported by DPDK.
v8:
* rebase
* reduce scope for disabling error "-Warray-bounds=" to only
the place that needs it
* remove parentesis around numbers from defines in test_bitset.c
v7:
* remove use of VLA from new file which sneaked in during review
v6:
* remove use of VLA from new test code added recently
* fix title for patch 08/20
v5:
* add patches for net/ice, net/ixgbe and gro
from Konstantin Ananyev from
https://patchwork.dpdk.org/project/dpdk/list/?series=31972&archive=both&state=*
* address debug_autotest ASan failure
* address array-bound error in bitset_autotest with gcc-13
v4:
* rebase and adapt for changes made in main since v3 was sent
* use fixed maximum array size instead of VLA when doable
v3:
* address checkpatch/check git log warnings (minor typos)
v2:
* replace patches for ethdev, hash, rcu and include new
patches for eal from Konstantin Ananyev
from https://patchwork.dpdk.org/project/dpdk/list/?series=31781
Andre Muezerie (3):
test: remove use of VLAs for Windows built code in bitset tests
app/testpmd: remove use of VLAs for Windows built code in
shared_rxq_fwd
hash: remove use of VLAs by using standard arrays
Konstantin Ananyev (10):
eal/linux: remove use of VLAs
eal/common: remove use of VLAs
ethdev: remove use of VLAs for Windows built code
hash: remove use of VLAs for Windows built code
hash/thash: remove use of VLAs for Windows built
rcu: remove use of VLAs for Windows built code
gro: fix overwrite unprocessed packets
gro: remove use of VLAs
net/ixgbe: remove use of VLAs
net/ice: remove use of VLAs
Tyler Retzlaff (8):
eal: include header required for alloca
app/testpmd: remove use of VLAs for Windows built
test: remove use of VLAs for Windows built code
common/idpf: remove use of VLAs for Windows built code
net/i40e: remove use of VLAs for Windows built code
common/mlx5: remove use of VLAs for Windows built code
net/mlx5: remove use of VLAs for Windows built code
build: enable vla warnings on Windows built code
app/test-pmd/cmdline.c | 2 +-
app/test-pmd/cmdline_flow.c | 15 +-
app/test-pmd/config.c | 16 +-
app/test-pmd/shared_rxq_fwd.c | 2 +-
app/test/test.c | 2 +-
app/test/test_bitset.c | 65 ++++---
app/test/test_cmdline_string.c | 2 +-
app/test/test_cryptodev.c | 34 ++--
app/test/test_cryptodev_blockcipher.c | 4 +-
app/test/test_cryptodev_crosscheck.c | 2 +-
app/test/test_dmadev.c | 9 +-
app/test/test_hash.c | 14 +-
app/test/test_lcore_var_perf.c | 2 +-
app/test/test_mempool.c | 25 +--
app/test/test_reassembly_perf.c | 4 +-
app/test/test_reorder.c | 48 ++---
app/test/test_service_cores.c | 9 +-
app/test/test_thash.c | 7 +-
config/meson.build | 4 +
drivers/common/idpf/idpf_common_rxtx.c | 2 +-
drivers/common/idpf/idpf_common_rxtx_avx512.c | 6 +-
drivers/common/mlx5/mlx5_common.h | 4 +-
drivers/common/mlx5/mlx5_devx_cmds.c | 7 +-
drivers/net/i40e/i40e_testpmd.c | 5 +-
drivers/net/ice/ice_rxtx.c | 18 +-
drivers/net/ice/ice_rxtx.h | 2 +
drivers/net/ixgbe/ixgbe_ethdev.c | 21 +-
drivers/net/ixgbe/ixgbe_rxtx_vec_common.h | 4 +-
drivers/net/mlx5/mlx5.c | 5 +-
drivers/net/mlx5/mlx5_flow.c | 6 +-
lib/eal/common/eal_common_proc.c | 5 +-
lib/eal/linux/eal_interrupts.c | 32 ++-
lib/eal/linux/include/rte_os.h | 1 +
lib/eal/windows/include/rte_os.h | 1 +
lib/ethdev/rte_ethdev.c | 183 +++++++++++-------
lib/gro/rte_gro.c | 42 ++--
lib/hash/rte_cuckoo_hash.c | 4 +-
lib/hash/rte_thash.c | 2 +-
lib/hash/rte_thash.h | 8 +
lib/hash/rte_thash_gf2_poly_math.c | 7 +-
lib/rcu/rte_rcu_qsbr.c | 7 +-
lib/rcu/rte_rcu_qsbr.h | 5 +
42 files changed, 380 insertions(+), 263 deletions(-)
--
2.47.0.vfs.0.3
More information about the dev
mailing list