net/mlx5: fix flow table and queue routine on Windows
The macro HAVE_MLX5_HWS_SUPPORT was introduced for HWS only. And
HWS was not supported on Windows. So macro HAVE_MLX5_HWS_SUPPORT
should be only around the code which HWS uses, but avoid including
the code block shared by Linux and Windows.
Fixes: 22681deead
("net/mlx5/hws: enable hardware steering")
Signed-off-by: Suanming Mou <suanmingm@nvidia.com>
Acked-by: Viacheslav Ovsiienko <viacheslavo@nvidia.com>
This commit is contained in:
parent
139f396bc0
commit
d9bad05024
@ -1833,12 +1833,14 @@ mlx5_alloc_table_hash_list(struct mlx5_priv *priv __rte_unused)
|
||||
int err = 0;
|
||||
|
||||
/* Tables are only used in DV and DR modes. */
|
||||
#ifdef HAVE_MLX5_HWS_SUPPORT
|
||||
#if defined(HAVE_IBV_FLOW_DV_SUPPORT) || !defined(HAVE_INFINIBAND_VERBS_H)
|
||||
struct mlx5_dev_ctx_shared *sh = priv->sh;
|
||||
char s[MLX5_NAME_SIZE];
|
||||
|
||||
#ifdef HAVE_MLX5_HWS_SUPPORT
|
||||
if (priv->sh->config.dv_flow_en == 2)
|
||||
return mlx5_alloc_hw_group_hash_list(priv);
|
||||
#endif
|
||||
MLX5_ASSERT(sh);
|
||||
snprintf(s, sizeof(s), "%s_flow_table", priv->sh->ibdev_name);
|
||||
sh->flow_tbls = mlx5_hlist_create(s, MLX5_FLOW_TABLE_HLIST_ARRAY_SIZE,
|
||||
|
@ -907,6 +907,7 @@ mlx5_devx_hrxq_new(struct rte_eth_dev *dev, struct mlx5_hrxq *hrxq,
|
||||
rte_errno = errno;
|
||||
goto error;
|
||||
}
|
||||
#if defined(HAVE_IBV_FLOW_DV_SUPPORT) || !defined(HAVE_INFINIBAND_VERBS_H)
|
||||
#ifdef HAVE_MLX5_HWS_SUPPORT
|
||||
if (hrxq->hws_flags) {
|
||||
hrxq->action = mlx5dr_action_create_dest_tir
|
||||
@ -916,6 +917,7 @@ mlx5_devx_hrxq_new(struct rte_eth_dev *dev, struct mlx5_hrxq *hrxq,
|
||||
goto error;
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
if (mlx5_flow_os_create_flow_action_dest_devx_tir(hrxq->tir,
|
||||
&hrxq->action)) {
|
||||
rte_errno = errno;
|
||||
|
Loading…
Reference in New Issue
Block a user