aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/mellanox/mlx5
diff options
context:
space:
mode:
authorRoi Dayan <roid@mellanox.com>2019-02-21 16:29:27 +0200
committerSaeed Mahameed <saeedm@mellanox.com>2019-03-01 12:04:17 -0800
commit6997b1c9cace95c0e67de620a94ab6ba88d044fe (patch)
treea1b063abdacd7cc01295655876e1fc3eda499a37 /drivers/net/ethernet/mellanox/mlx5
parentnet/mlx5e: Allow one failure when offloading tc encap rules under multipath (diff)
downloadlinux-dev-6997b1c9cace95c0e67de620a94ab6ba88d044fe.tar.xz
linux-dev-6997b1c9cace95c0e67de620a94ab6ba88d044fe.zip
net/mlx5: Emit port affinity event for multipath offloads
Under multipath offload scheme, as part of handling fib events, emit mlx5 port affinity event on the enabled ports which will be handled by the tc offloads code. Signed-off-by: Roi Dayan <roid@mellanox.com> Reviewed-by: Or Gerlitz <ogerlitz@mellanox.com> Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
Diffstat (limited to 'drivers/net/ethernet/mellanox/mlx5')
-rw-r--r--drivers/net/ethernet/mellanox/mlx5/core/lag_mp.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/lag_mp.c b/drivers/net/ethernet/mellanox/mlx5/core/lag_mp.c
index 5680beba8c07..5633f8572800 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/lag_mp.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/lag_mp.c
@@ -6,6 +6,7 @@
#include "lag_mp.h"
#include "mlx5_core.h"
#include "eswitch.h"
+#include "lib/mlx5.h"
static bool mlx5_lag_multipath_check_prereq(struct mlx5_lag *ldev)
{
@@ -73,6 +74,16 @@ static void mlx5_lag_set_port_affinity(struct mlx5_lag *ldev, int port)
return;
}
+ if (tracker.netdev_state[0].tx_enabled)
+ mlx5_notifier_call_chain(ldev->pf[0].dev->priv.events,
+ MLX5_DEV_EVENT_PORT_AFFINITY,
+ (void *)0);
+
+ if (tracker.netdev_state[1].tx_enabled)
+ mlx5_notifier_call_chain(ldev->pf[1].dev->priv.events,
+ MLX5_DEV_EVENT_PORT_AFFINITY,
+ (void *)0);
+
mlx5_modify_lag(ldev, &tracker);
}