net/mlx5e: Set peer flow needed also for multipath
authorRoi Dayan <roid@mellanox.com>
Thu, 7 Feb 2019 12:09:15 +0000 (14:09 +0200)
committerSaeed Mahameed <saeedm@mellanox.com>
Fri, 1 Mar 2019 20:04:18 +0000 (12:04 -0800)
Update the predicate that determines if to duplicate rules installed on
vport reps to account also for the multipath case.

Signed-off-by: Roi Dayan <roid@mellanox.com>
Reviewed-by: Or Gerlitz <ogerlitz@mellanox.com>
Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
drivers/net/ethernet/mellanox/mlx5/core/en_tc.c

index 850cf6ecb4d7d0eb5a2a5ee76d5dce2dc9ec564c..b4967a0ff8c7ba6ce51826e4ae61964a52bfebb5 100644 (file)
@@ -2731,8 +2731,15 @@ static bool is_peer_flow_needed(struct mlx5e_tc_flow *flow)
        bool esw_paired = mlx5_devcom_is_paired(attr->in_mdev->priv.devcom,
                                                MLX5_DEVCOM_ESW_OFFLOADS);
 
-       return esw_paired && mlx5_lag_is_sriov(attr->in_mdev) &&
-              (is_rep_ingress || act_is_encap);
+       if (!esw_paired)
+               return false;
+
+       if ((mlx5_lag_is_sriov(attr->in_mdev) ||
+            mlx5_lag_is_multipath(attr->in_mdev)) &&
+           (is_rep_ingress || act_is_encap))
+               return true;
+
+       return false;
 }
 
 static int