aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans Petter Selasky <hselasky@FreeBSD.org>2022-02-01 15:20:14 +0000
committerHans Petter Selasky <hselasky@FreeBSD.org>2022-02-01 15:21:16 +0000
commit001106f807702592647e2ab4c3dadf31f7ec9427 (patch)
treeafac326633afb908f0bc75aa169ed32fa74ecaae
parent2c0ade806aa7b450dc4f4c53b5345050eb6dcb4b (diff)
mlx5en: Create flowtables in correct order.
Because it affects how the flow tables may re-direct traffic. MFC after: 1 week Sponsored by: NVIDIA Networking
-rw-r--r--sys/dev/mlx5/mlx5_en/mlx5_en_flow_table.c20
1 files changed, 10 insertions, 10 deletions
diff --git a/sys/dev/mlx5/mlx5_en/mlx5_en_flow_table.c b/sys/dev/mlx5/mlx5_en/mlx5_en_flow_table.c
index 5d52415381aa..dab2d4bfda38 100644
--- a/sys/dev/mlx5/mlx5_en/mlx5_en_flow_table.c
+++ b/sys/dev/mlx5/mlx5_en/mlx5_en_flow_table.c
@@ -2292,21 +2292,21 @@ mlx5e_open_flow_tables(struct mlx5e_priv *priv)
if (err)
goto err_destroy_vlan_flow_table;
- err = mlx5e_create_main_flow_table(priv, false);
+ err = mlx5e_create_main_flow_table(priv, true);
if (err)
goto err_destroy_vxlan_flow_table;
- err = mlx5e_create_main_flow_table(priv, true);
+ err = mlx5e_create_inner_rss_flow_table(priv);
if (err)
- goto err_destroy_main_flow_table;
+ goto err_destroy_main_flow_table_true;
- err = mlx5e_create_inner_rss_flow_table(priv);
+ err = mlx5e_create_main_flow_table(priv, false);
if (err)
- goto err_destroy_main_vxlan_flow_table;
+ goto err_destroy_inner_rss_flow_table;
err = mlx5e_add_vxlan_catchall_rule(priv);
if (err)
- goto err_destroy_inner_rss_flow_table;
+ goto err_destroy_main_flow_table_false;
err = mlx5e_accel_fs_tcp_create(priv);
if (err)
@@ -2316,12 +2316,12 @@ mlx5e_open_flow_tables(struct mlx5e_priv *priv)
err_del_vxlan_catchall_rule:
mlx5e_del_vxlan_catchall_rule(priv);
+err_destroy_main_flow_table_false:
+ mlx5e_destroy_main_flow_table(priv);
err_destroy_inner_rss_flow_table:
mlx5e_destroy_inner_rss_flow_table(priv);
-err_destroy_main_vxlan_flow_table:
+err_destroy_main_flow_table_true:
mlx5e_destroy_main_vxlan_flow_table(priv);
-err_destroy_main_flow_table:
- mlx5e_destroy_main_flow_table(priv);
err_destroy_vxlan_flow_table:
mlx5e_destroy_vxlan_flow_table(priv);
err_destroy_vlan_flow_table:
@@ -2335,9 +2335,9 @@ mlx5e_close_flow_tables(struct mlx5e_priv *priv)
{
mlx5e_accel_fs_tcp_destroy(priv);
mlx5e_del_vxlan_catchall_rule(priv);
+ mlx5e_destroy_main_flow_table(priv);
mlx5e_destroy_inner_rss_flow_table(priv);
mlx5e_destroy_main_vxlan_flow_table(priv);
- mlx5e_destroy_main_flow_table(priv);
mlx5e_destroy_vxlan_flow_table(priv);
mlx5e_destroy_vlan_flow_table(priv);
}