]> git.baikalelectronics.ru Git - kernel.git/commitdiff
net/mlx5e: rep: Improve reg_cX conditions
authorSaeed Mahameed <saeedm@nvidia.com>
Mon, 14 Dec 2020 22:07:19 +0000 (14:07 -0800)
committerSaeed Mahameed <saeedm@nvidia.com>
Thu, 11 Mar 2021 22:35:14 +0000 (14:35 -0800)
There is no point of calculating reg_c1 or overriding reg_c0 if we are
going to abort the function.

Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
Reviewed-by: Roi Dayan <roid@nvidia.com>
drivers/net/ethernet/mellanox/mlx5/core/en/rep/tc.c

index 065126370acd2d1c47fe18898a968d50f4c64bc8..fcae3c0a4e9f01ff0e5a0ee5f14c1c566c80a1f8 100644 (file)
@@ -621,11 +621,7 @@ bool mlx5e_rep_tc_update_skb(struct mlx5_cqe64 *cqe,
        int err;
 
        reg_c0 = (be32_to_cpu(cqe->sop_drop_qpn) & MLX5E_TC_FLOW_ID_MASK);
-       if (reg_c0 == MLX5_FS_DEFAULT_FLOW_TAG)
-               reg_c0 = 0;
-       reg_c1 = be32_to_cpu(cqe->ft_metadata);
-
-       if (!reg_c0)
+       if (!reg_c0 || reg_c0 == MLX5_FS_DEFAULT_FLOW_TAG)
                return true;
 
        /* If reg_c0 is not equal to the default flow tag then skb->mark
@@ -633,6 +629,8 @@ bool mlx5e_rep_tc_update_skb(struct mlx5_cqe64 *cqe,
         */
        skb->mark = 0;
 
+       reg_c1 = be32_to_cpu(cqe->ft_metadata);
+
        priv = netdev_priv(skb->dev);
        esw = priv->mdev->priv.eswitch;