diff options
author | Roi Dayan <roid@mellanox.com> | 2019-02-21 16:29:27 +0200 |
---|---|---|
committer | Saeed Mahameed <saeedm@mellanox.com> | 2019-03-01 12:04:17 -0800 |
commit | 6997b1c9cace95c0e67de620a94ab6ba88d044fe (patch) | |
tree | a1b063abdacd7cc01295655876e1fc3eda499a37 /drivers/net/ethernet/mellanox/mlx5 | |
parent | net/mlx5e: Allow one failure when offloading tc encap rules under multipath (diff) | |
download | linux-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.c | 11 |
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); } |