Skip to content

Commit 6997b1c

Browse files
roidayanSaeed Mahameed
authored andcommitted
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 <[email protected]> Reviewed-by: Or Gerlitz <[email protected]> Signed-off-by: Saeed Mahameed <[email protected]>
1 parent ef06c9e commit 6997b1c

File tree

2 files changed

+12
-0
lines changed

2 files changed

+12
-0
lines changed

drivers/net/ethernet/mellanox/mlx5/core/lag_mp.c

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
#include "lag_mp.h"
77
#include "mlx5_core.h"
88
#include "eswitch.h"
9+
#include "lib/mlx5.h"
910

1011
static bool mlx5_lag_multipath_check_prereq(struct mlx5_lag *ldev)
1112
{
@@ -73,6 +74,16 @@ static void mlx5_lag_set_port_affinity(struct mlx5_lag *ldev, int port)
7374
return;
7475
}
7576

77+
if (tracker.netdev_state[0].tx_enabled)
78+
mlx5_notifier_call_chain(ldev->pf[0].dev->priv.events,
79+
MLX5_DEV_EVENT_PORT_AFFINITY,
80+
(void *)0);
81+
82+
if (tracker.netdev_state[1].tx_enabled)
83+
mlx5_notifier_call_chain(ldev->pf[1].dev->priv.events,
84+
MLX5_DEV_EVENT_PORT_AFFINITY,
85+
(void *)0);
86+
7687
mlx5_modify_lag(ldev, &tracker);
7788
}
7889

include/linux/mlx5/driver.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -195,6 +195,7 @@ struct mlx5_rsc_debug {
195195

196196
enum mlx5_dev_event {
197197
MLX5_DEV_EVENT_SYS_ERROR = 128, /* 0 - 127 are FW events */
198+
MLX5_DEV_EVENT_PORT_AFFINITY = 129,
198199
};
199200

200201
enum mlx5_port_status {

0 commit comments

Comments
 (0)