[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <209ea06f2a192bb24567720ade3583f41e82f0c3.1660641154.git.leonro@nvidia.com>
Date: Tue, 16 Aug 2022 13:38:05 +0300
From: Leon Romanovsky <leon@...nel.org>
To: Steffen Klassert <steffen.klassert@...unet.com>,
"David S . Miller" <davem@...emloft.net>,
Jakub Kicinski <kuba@...nel.org>,
Saeed Mahameed <saeedm@...dia.com>
Cc: Leon Romanovsky <leonro@...dia.com>,
Eric Dumazet <edumazet@...gle.com>, netdev@...r.kernel.org,
Paolo Abeni <pabeni@...hat.com>, Raed Salem <raeds@...dia.com>,
ipsec-devel <devel@...ux-ipsec.org>
Subject: [PATCH xfrm-next 17/26] net/mlx5e: Group IPsec miss handles into separate struct
From: Leon Romanovsky <leonro@...dia.com>
Move miss handles into dedicated struct, so we can reuse it in next
patch when creating IPsec policy flow table.
Signed-off-by: Leon Romanovsky <leonro@...dia.com>
---
.../mellanox/mlx5/core/en_accel/ipsec_fs.c | 18 +++++++++++-------
1 file changed, 11 insertions(+), 7 deletions(-)
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec_fs.c b/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec_fs.c
index 7d1b587a0a04..3443638453a9 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec_fs.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec_fs.c
@@ -16,10 +16,14 @@ struct mlx5e_ipsec_ft {
u32 refcnt;
};
+struct mlx5e_ipsec_miss {
+ struct mlx5_flow_group *group;
+ struct mlx5_flow_handle *rule;
+};
+
struct mlx5e_ipsec_rx {
struct mlx5e_ipsec_ft ft;
- struct mlx5_flow_group *miss_group;
- struct mlx5_flow_handle *miss_rule;
+ struct mlx5e_ipsec_miss sa;
struct mlx5_flow_destination default_dest;
struct mlx5e_ipsec_rule status;
};
@@ -142,18 +146,18 @@ static int rx_fs_create(struct mlx5_core_dev *mdev, struct mlx5e_ipsec_rx *rx)
mlx5_core_err(mdev, "fail to create ipsec rx miss_group err=%d\n", err);
goto out;
}
- rx->miss_group = miss_group;
+ rx->sa.group = miss_group;
/* Create miss rule */
miss_rule =
mlx5_add_flow_rules(ft, spec, &flow_act, &rx->default_dest, 1);
if (IS_ERR(miss_rule)) {
- mlx5_destroy_flow_group(rx->miss_group);
+ mlx5_destroy_flow_group(rx->sa.group);
err = PTR_ERR(miss_rule);
mlx5_core_err(mdev, "fail to create ipsec rx miss_rule err=%d\n", err);
goto out;
}
- rx->miss_rule = miss_rule;
+ rx->sa.rule = miss_rule;
out:
kvfree(flow_group_in);
kvfree(spec);
@@ -162,8 +166,8 @@ static int rx_fs_create(struct mlx5_core_dev *mdev, struct mlx5e_ipsec_rx *rx)
static void rx_destroy(struct mlx5_core_dev *mdev, struct mlx5e_ipsec_rx *rx)
{
- mlx5_del_flow_rules(rx->miss_rule);
- mlx5_destroy_flow_group(rx->miss_group);
+ mlx5_del_flow_rules(rx->sa.rule);
+ mlx5_destroy_flow_group(rx->sa.group);
mlx5_destroy_flow_table(rx->ft.sa);
mlx5_del_flow_rules(rx->status.rule);
--
2.37.2
Powered by blists - more mailing lists