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 <roret...@linux.microsoft.com>
---
 drivers/net/mlx5/mlx5.c      | 5 ++---
 drivers/net/mlx5/mlx5_flow.c | 6 +++---
 2 files changed, 5 insertions(+), 6 deletions(-)

diff --git a/drivers/net/mlx5/mlx5.c b/drivers/net/mlx5/mlx5.c
index d1a6382..de16acf 100644
--- a/drivers/net/mlx5/mlx5.c
+++ b/drivers/net/mlx5/mlx5.c
@@ -1597,14 +1597,13 @@
 mlx5_rt_timestamp_config(struct mlx5_dev_ctx_shared *sh,
                         struct mlx5_hca_attr *hca_attr)
 {
-       uint32_t dw_cnt = MLX5_ST_SZ_DW(register_mtutc);
-       uint32_t reg[dw_cnt];
+       uint32_t reg[MLX5_ST_SZ_DW(register_mtutc)];
        int ret = ENOTSUP;
 
        if (hca_attr->access_register_user)
                ret = mlx5_devx_cmd_register_read(sh->cdev->ctx,
                                                  MLX5_REGISTER_ID_MTUTC, 0,
-                                                 reg, dw_cnt);
+                                                 reg, RTE_DIM(reg));
        if (!ret) {
                uint32_t ts_mode;
 
diff --git a/drivers/net/mlx5/mlx5_flow.c b/drivers/net/mlx5/mlx5_flow.c
index f31fdfb..b52fb77 100644
--- a/drivers/net/mlx5/mlx5_flow.c
+++ b/drivers/net/mlx5/mlx5_flow.c
@@ -1476,8 +1476,8 @@ struct mlx5_flow_tunnel_info {
                                          "mask/last without a spec is not"
                                          " supported");
        if (item->spec && item->last && !range_accepted) {
-               uint8_t spec[size];
-               uint8_t last[size];
+               uint8_t *spec = alloca(size);
+               uint8_t *last = alloca(size);
                unsigned int i;
                int ret;
 
@@ -8344,7 +8344,7 @@ struct mlx5_flow_workspace*
                        .type = RTE_FLOW_ITEM_TYPE_END,
                },
        };
-       uint16_t queue[priv->reta_idx_n];
+       uint16_t *queue = alloca(sizeof(uint16_t) * priv->reta_idx_n);
        struct rte_flow_action_rss action_rss = {
                .func = RTE_ETH_HASH_FUNCTION_DEFAULT,
                .level = 0,
-- 
1.8.3.1

Reply via email to