[PATCH 00/16] remove use of VLAs for Windows built code

Andre Muezerie andremue at linux.microsoft.com
Fri Nov 1 19:06:04 CET 2024


On Mon, Oct 07, 2024 at 10:15:46AM -0700, Stephen Hemminger wrote:
> On Wed, 17 Apr 2024 16:41:43 -0700
> Tyler Retzlaff <roretzla at linux.microsoft.com> wrote:
> 
> > 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.
> > 
> > Tyler Retzlaff (16):
> >   eal: include header required for alloca
> >   hash: remove use of VLAs for Windows built code
> >   ethdev: remove use of VLAs for Windows built code
> >   gro: remove use of VLAs for Windows built code
> >   latencystats: remove use of VLAs for Windows built code
> >   lpm: remove use of VLAs for Windows built code
> >   rcu: remove use of VLAs for Windows built code
> >   app/testpmd: remove use of VLAs for Windows built code
> >   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
> >   net/ice: remove use of VLAs for Windows built code
> >   net/ixgbe: 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                   |  9 +++--
> >  app/test-pmd/config.c                         | 16 +++++----
> >  app/test-pmd/shared_rxq_fwd.c                 |  2 +-
> >  app/test/test.c                               |  2 +-
> >  app/test/test_cmdline_string.c                |  2 +-
> >  app/test/test_cryptodev.c                     | 32 +++++++++---------
> >  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                          |  8 ++---
> >  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                    |  2 +-
> >  drivers/net/ixgbe/ixgbe_ethdev.c              |  5 +--
> >  drivers/net/ixgbe/ixgbe_rxtx_vec_common.h     |  2 +-
> >  drivers/net/mlx5/mlx5.c                       |  5 ++-
> >  drivers/net/mlx5/mlx5_flow.c                  |  6 ++--
> >  lib/eal/linux/include/rte_os.h                |  1 +
> >  lib/eal/windows/include/rte_os.h              |  1 +
> >  lib/ethdev/rte_ethdev.c                       |  9 ++---
> >  lib/gro/rte_gro.c                             |  4 +--
> >  lib/hash/rte_cuckoo_hash.c                    |  4 +--
> >  lib/hash/rte_thash.c                          |  2 +-
> >  lib/latencystats/rte_latencystats.c           |  2 +-
> >  lib/lpm/rte_lpm.h                             |  2 +-
> >  lib/rcu/rte_rcu_qsbr.c                        |  6 ++--
> >  36 files changed, 137 insertions(+), 123 deletions(-)
> 
> Looks good:
> 
> Series-Acked-by: Stephen Hemminger <stephen at networkplumber.org>
> 
> 
> Series needs to be rebased to current master, some parts have changed.

Hi Stephen, I'll continue the work Tyler was doing on this front.
You can expect a new rebased patch soon. I'll also adapt it for the parts that have changed.


More information about the dev mailing list