diff options
author | Mark Zhang <markzhang@nvidia.com> | 2023-01-04 20:17:55 -0800 |
---|---|---|
committer | Leon Romanovsky <leon@kernel.org> | 2023-02-15 11:30:03 +0200 |
commit | 899577600b25b338072095009d4c578fbd936177 (patch) | |
tree | 4b3ed05e0b417593e3f0074a64204f5980f8afee /drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec_offload.c | |
parent | f91ddd3aa4b313aa4b792d1588ccb63c3e4ace0b (diff) | |
download | linux-stable-899577600b25b338072095009d4c578fbd936177.tar.gz linux-stable-899577600b25b338072095009d4c578fbd936177.tar.bz2 linux-stable-899577600b25b338072095009d4c578fbd936177.zip |
net/mlx5: Configure IPsec steering for ingress RoCEv2 traffic
Add steering tables/rules to check if the decrypted traffic is RoCEv2,
if so then forward it to RDMA_RX domain.
Signed-off-by: Mark Zhang <markzhang@nvidia.com>
Signed-off-by: Patrisious Haddad <phaddad@nvidia.com>
Reviewed-by: Leon Romanovsky <leonro@nvidia.com>
Reviewed-by: Raed Salem <raeds@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
Signed-off-by: Leon Romanovsky <leon@kernel.org>
Diffstat (limited to 'drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec_offload.c')
-rw-r--r-- | drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec_offload.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec_offload.c b/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec_offload.c index 8e3614218fc4..436d939b95af 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec_offload.c +++ b/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec_offload.c @@ -42,6 +42,10 @@ u32 mlx5_ipsec_device_caps(struct mlx5_core_dev *mdev) MLX5_CAP_FLOWTABLE_NIC_RX(mdev, decap)) caps |= MLX5_IPSEC_CAP_PACKET_OFFLOAD; + if (mlx5_get_roce_state(mdev) && + (MLX5_CAP_GEN_2(mdev, flow_table_type_2_type) & MLX5_FT_NIC_RX_2_NIC_RX_RDMA)) + caps |= MLX5_IPSEC_CAP_ROCE; + if (!caps) return 0; |