[v2] net/mlx5: revert default rules amount optimization

Message ID 1573596010-9467-1-git-send-email-matan@mellanox.com (mailing list archive)
State Accepted, archived
Delegated to: Raslan Darawsheh
Headers
Series [v2] net/mlx5: revert default rules amount optimization |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/iol-intel-Performance success Performance Testing PASS
ci/iol-compilation success Compile Testing PASS
ci/travis-robot success Travis build: passed
ci/Intel-compilation success Compilation OK
ci/iol-mellanox-Performance success Performance Testing PASS

Commit Message

Matan Azrad Nov. 12, 2019, 10 p.m. UTC
  This reverts commit 304ffe576f239e5405228c0feec04b6138d525b7.

It tried to optimize the amount of the default flow
rules and created it only once on top of the PF representor.

For each FDB rule, the default port ID to match on is like of the port
that triggers the flow.

Hence, the single default rule will not be matched on the VF traffic.

As a result, all the traffic of the VFs will not match to the jump flow
in the root table and will always be forwarded to the representor port.

Revert the commit.

Fixes: 304ffe576f23 ("net/mlx5: fix condition to create default rule")
Cc: dekelp@mellanox.com

Signed-off-by: Matan Azrad <matan@mellanox.com>
---

V2:
Fix missing signed-off.

 drivers/net/mlx5/mlx5_trigger.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
  

Comments

Slava Ovsiienko Nov. 13, 2019, 6:23 a.m. UTC | #1
> -----Original Message-----
> From: Matan Azrad <matan@mellanox.com>
> Sent: Wednesday, November 13, 2019 0:00
> To: dev@dpdk.org
> Cc: Slava Ovsiienko <viacheslavo@mellanox.com>; Dekel Peled
> <dekelp@mellanox.com>
> Subject: [PATCH v2] net/mlx5: revert default rules amount optimization
> 
> This reverts commit 304ffe576f239e5405228c0feec04b6138d525b7.
> 
> It tried to optimize the amount of the default flow rules and created it only
> once on top of the PF representor.
> 
> For each FDB rule, the default port ID to match on is like of the port that
> triggers the flow.
> 
> Hence, the single default rule will not be matched on the VF traffic.
> 
> As a result, all the traffic of the VFs will not match to the jump flow in the
> root table and will always be forwarded to the representor port.
> 
> Revert the commit.
> 
> Fixes: 304ffe576f23 ("net/mlx5: fix condition to create default rule")
> Cc: dekelp@mellanox.com
> 
> Signed-off-by: Matan Azrad <matan@mellanox.com>
Acked-by: Viacheslav Ovsiienko <viacheslavo@mellanox.com>
  
Raslan Darawsheh Nov. 13, 2019, 9:37 a.m. UTC | #2
Hi,

> -----Original Message-----
> From: dev <dev-bounces@dpdk.org> On Behalf Of Matan Azrad
> Sent: Wednesday, November 13, 2019 12:00 AM
> To: dev@dpdk.org
> Cc: Slava Ovsiienko <viacheslavo@mellanox.com>; Dekel Peled
> <dekelp@mellanox.com>
> Subject: [dpdk-dev] [PATCH v2] net/mlx5: revert default rules amount
> optimization
> 
> This reverts commit 304ffe576f239e5405228c0feec04b6138d525b7.
> 
> It tried to optimize the amount of the default flow rules and created it only
> once on top of the PF representor.
> 
> For each FDB rule, the default port ID to match on is like of the port that
> triggers the flow.
> 
> Hence, the single default rule will not be matched on the VF traffic.
> 
> As a result, all the traffic of the VFs will not match to the jump flow in the
> root table and will always be forwarded to the representor port.
> 
> Revert the commit.
> 
> Fixes: 304ffe576f23 ("net/mlx5: fix condition to create default rule")
> Cc: dekelp@mellanox.com
> 
> Signed-off-by: Matan Azrad <matan@mellanox.com>
> ---
> 
> V2:
> Fix missing signed-off.
> 
>  drivers/net/mlx5/mlx5_trigger.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 

Patch applied to next-net-mlx,

Kindest regards,
Raslan Darawsheh
  

Patch

diff --git a/drivers/net/mlx5/mlx5_trigger.c b/drivers/net/mlx5/mlx5_trigger.c
index f4dc047..cafab25 100644
--- a/drivers/net/mlx5/mlx5_trigger.c
+++ b/drivers/net/mlx5/mlx5_trigger.c
@@ -420,7 +420,7 @@ 
 		}
 		mlx5_txq_release(dev, i);
 	}
-	if (priv->config.dv_esw_en && !priv->config.vf && !priv->representor)
+	if (priv->config.dv_esw_en && !priv->config.vf)
 		if (!mlx5_flow_create_esw_table_zero_flow(dev))
 			goto error;
 	if (priv->isolated)