net/mlx5: Remove useless IPsec device checks
authorLeon Romanovsky <leonro@nvidia.com>
Wed, 6 Apr 2022 08:25:45 +0000 (11:25 +0300)
committerLeon Romanovsky <leonro@nvidia.com>
Sat, 9 Apr 2022 05:25:07 +0000 (08:25 +0300)
The mlx5_is_ipsec_device() check was to distinguish ConnectX device
related ops from FPGA, so post removing FPGA IPsec code this check
can be removed as no other device implements it.

It is safe to do it as there is already embedded check of IPsec device
in mlx5_accel_ipsec_device_caps().

Link: https://lore.kernel.org/r/e45362abfcabe18e8af20ec8d1acdc99355978f3.1649232994.git.leonro@nvidia.com
Reviewed-by: Raed Salem <raeds@nvidia.com>
Signed-off-by: Leon Romanovsky <leonro@nvidia.com>
drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c
drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec_fs.c
drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec_rxtx.c

index f6e3b549424f6de39a941807a5bbc3eab85d8593..1391a0c84f16727ef828f99c4b1be58fc1997768 100644 (file)
@@ -286,9 +286,6 @@ static inline int mlx5e_xfrm_validate_state(struct xfrm_state *x)
 static int mlx5e_xfrm_fs_add_rule(struct mlx5e_priv *priv,
                                  struct mlx5e_ipsec_sa_entry *sa_entry)
 {
-       if (!mlx5_is_ipsec_device(priv->mdev))
-               return 0;
-
        return mlx5e_accel_ipsec_fs_add_rule(priv, &sa_entry->xfrm->attrs,
                                             sa_entry->ipsec_obj_id,
                                             &sa_entry->ipsec_rule);
@@ -297,9 +294,6 @@ static int mlx5e_xfrm_fs_add_rule(struct mlx5e_priv *priv,
 static void mlx5e_xfrm_fs_del_rule(struct mlx5e_priv *priv,
                                   struct mlx5e_ipsec_sa_entry *sa_entry)
 {
-       if (!mlx5_is_ipsec_device(priv->mdev))
-               return;
-
        mlx5e_accel_ipsec_fs_del_rule(priv, &sa_entry->xfrm->attrs,
                                      &sa_entry->ipsec_rule);
 }
@@ -550,9 +544,7 @@ void mlx5e_ipsec_build_netdev(struct mlx5e_priv *priv)
                return;
        }
 
-       if (mlx5_is_ipsec_device(mdev))
-               netdev->gso_partial_features |= NETIF_F_GSO_ESP;
-
+       netdev->gso_partial_features |= NETIF_F_GSO_ESP;
        mlx5_core_dbg(mdev, "mlx5e: ESP GSO capability turned on\n");
        netdev->features |= NETIF_F_GSO_ESP;
        netdev->hw_features |= NETIF_F_GSO_ESP;
index 17da23dff0edb191acd77ad9a75bdd51056ef90c..32093497292f899f654c40b39dbd7e1e8848392d 100644 (file)
@@ -700,9 +700,6 @@ int mlx5e_accel_ipsec_fs_init(struct mlx5e_priv *priv)
 {
        int err;
 
-       if (!mlx5_is_ipsec_device(priv->mdev) || !priv->ipsec)
-               return -EOPNOTSUPP;
-
        err = fs_init_tx(priv);
        if (err)
                return err;
index 8e0cf5e651000939f1ad880ff225f2d6db1f2e49..08a6dd4b7662857e923ec9c7bdd3d46d8bcd5df7 100644 (file)
@@ -202,16 +202,14 @@ static int mlx5e_ipsec_set_state(struct mlx5e_priv *priv,
 
        ipsec_st->x = x;
        ipsec_st->xo = xo;
-       if (mlx5_is_ipsec_device(priv->mdev)) {
-               aead = x->data;
-               alen = crypto_aead_authsize(aead);
-               blksize = ALIGN(crypto_aead_blocksize(aead), 4);
-               clen = ALIGN(skb->len + 2, blksize);
-               plen = max_t(u32, clen - skb->len, 4);
-               tailen = plen + alen;
-               ipsec_st->plen = plen;
-               ipsec_st->tailen = tailen;
-       }
+       aead = x->data;
+       alen = crypto_aead_authsize(aead);
+       blksize = ALIGN(crypto_aead_blocksize(aead), 4);
+       clen = ALIGN(skb->len + 2, blksize);
+       plen = max_t(u32, clen - skb->len, 4);
+       tailen = plen + alen;
+       ipsec_st->plen = plen;
+       ipsec_st->tailen = tailen;
 
        return 0;
 }
@@ -244,19 +242,17 @@ void mlx5e_ipsec_tx_build_eseg(struct mlx5e_priv *priv, struct sk_buff *skb,
                   ((struct iphdr *)skb_network_header(skb))->protocol :
                   ((struct ipv6hdr *)skb_network_header(skb))->nexthdr;
 
-       if (mlx5_is_ipsec_device(priv->mdev)) {
-               eseg->flow_table_metadata |= cpu_to_be32(MLX5_ETH_WQE_FT_META_IPSEC);
-               eseg->trailer |= cpu_to_be32(MLX5_ETH_WQE_INSERT_TRAILER);
-               encap = x->encap;
-               if (!encap) {
-                       eseg->trailer |= (l3_proto == IPPROTO_ESP) ?
-                               cpu_to_be32(MLX5_ETH_WQE_TRAILER_HDR_OUTER_IP_ASSOC) :
-                               cpu_to_be32(MLX5_ETH_WQE_TRAILER_HDR_OUTER_L4_ASSOC);
-               } else if (encap->encap_type == UDP_ENCAP_ESPINUDP) {
-                       eseg->trailer |= (l3_proto == IPPROTO_ESP) ?
-                               cpu_to_be32(MLX5_ETH_WQE_TRAILER_HDR_INNER_IP_ASSOC) :
-                               cpu_to_be32(MLX5_ETH_WQE_TRAILER_HDR_INNER_L4_ASSOC);
-               }
+       eseg->flow_table_metadata |= cpu_to_be32(MLX5_ETH_WQE_FT_META_IPSEC);
+       eseg->trailer |= cpu_to_be32(MLX5_ETH_WQE_INSERT_TRAILER);
+       encap = x->encap;
+       if (!encap) {
+               eseg->trailer |= (l3_proto == IPPROTO_ESP) ?
+                       cpu_to_be32(MLX5_ETH_WQE_TRAILER_HDR_OUTER_IP_ASSOC) :
+                       cpu_to_be32(MLX5_ETH_WQE_TRAILER_HDR_OUTER_L4_ASSOC);
+       } else if (encap->encap_type == UDP_ENCAP_ESPINUDP) {
+               eseg->trailer |= (l3_proto == IPPROTO_ESP) ?
+                       cpu_to_be32(MLX5_ETH_WQE_TRAILER_HDR_INNER_IP_ASSOC) :
+                       cpu_to_be32(MLX5_ETH_WQE_TRAILER_HDR_INNER_L4_ASSOC);
        }
 }