net/mlx5: fix condition to create default rule
authorDekel Peled <dekelp@mellanox.com>
Thu, 7 Nov 2019 15:04:19 +0000 (17:04 +0200)
committerFerruh Yigit <ferruh.yigit@intel.com>
Mon, 11 Nov 2019 13:23:02 +0000 (14:23 +0100)
Previous patch added creation of a default flow rule on port start.
Rule is created under the condition that device is in eswitch mode,
and is not a VF, to make sure rule is created only once.
In Bluefield, where PF representor is used, this condition is not
sufficient. Rule is created twice, causing loss of traffic.

This patch updates this condition, adding check that device is also
not a representor.

Fixes: b67b4ecbde22 ("net/mlx5: skip table zero to improve insertion rate")

Signed-off-by: Dekel Peled <dekelp@mellanox.com>
Acked-by: Viacheslav Ovsiienko <viacheslavo@mellanox.com>
drivers/net/mlx5/mlx5_trigger.c

index cafab25..f4dc047 100644 (file)
@@ -420,7 +420,7 @@ mlx5_traffic_enable(struct rte_eth_dev *dev)
                }
                mlx5_txq_release(dev, i);
        }
-       if (priv->config.dv_esw_en && !priv->config.vf)
+       if (priv->config.dv_esw_en && !priv->config.vf && !priv->representor)
                if (!mlx5_flow_create_esw_table_zero_flow(dev))
                        goto error;
        if (priv->isolated)