mirror of
https://github.com/torvalds/linux.git
synced 2026-09-22 04:34:03 +02:00
RDMA/mlx5: Raise async event on device speed change
Raise IB_EVENT_DEVICE_SPEED_CHANGE whenever the speed of one of the device's ports changes. Usually all ports of the device changes together. This ensures user applications and upper-layer software are immediately notified when bandwidth changes, improving traffic management in dynamic environments. This is especially useful for vports which are part of a LAG configuration, to know if the effective speed of the LAG was changed. Signed-off-by: Or Har-Toov <ohartoov@nvidia.com> Reviewed-by: Mark Bloch <mbloch@nvidia.com> Signed-off-by: Edward Srouji <edwards@nvidia.com> Signed-off-by: Leon Romanovsky <leon@kernel.org>
This commit is contained in:
parent
51a07ce2fe
commit
3fd984d5cd
|
|
@ -2838,6 +2838,14 @@ static int handle_port_change(struct mlx5_ib_dev *ibdev, struct mlx5_eqe *eqe,
|
|||
case MLX5_PORT_CHANGE_SUBTYPE_ACTIVE:
|
||||
case MLX5_PORT_CHANGE_SUBTYPE_DOWN:
|
||||
case MLX5_PORT_CHANGE_SUBTYPE_INITIALIZED:
|
||||
if (ibdev->ib_active) {
|
||||
struct ib_event speed_event = {};
|
||||
|
||||
speed_event.device = &ibdev->ib_dev;
|
||||
speed_event.event = IB_EVENT_DEVICE_SPEED_CHANGE;
|
||||
ib_dispatch_event(&speed_event);
|
||||
}
|
||||
|
||||
/* In RoCE, port up/down events are handled in
|
||||
* mlx5_netdev_event().
|
||||
*/
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user