From: Inbar Karmy <inb...@mellanox.com> This RFC adds support for configuring PFC stall prevention through ethtool.
In the event where the device unexpectedly becomes unresponsive for a long period of time, flow control mechanism may propagate pause frames which will cause congestion spreading to the entire network. To prevent this scenario, the device may implement a protection mechanism for monitoring and resolving such state. The following patches allow the user to control the stall prevention functionality. PFC stall prevention configuration is done via ethtool -a (pause). Two modes are introduced: Default - current behavior per driver. Auto - protection mechanism controlled automatically by the driver. Due to lack of extension ability of ethtool_ops set_pauseparam, a new ethtool_ops get_pfc_prevention_mode is introduced. I based this patch set on net-next commit 50895b9de1d3("tcp: highest_sack fix "). Inbar Karmy (2): ethtool: Add support for configuring PFC stall prevention in ethtool net/mlx5e: PFC stall prevention support .../net/ethernet/mellanox/mlx5/core/en_ethtool.c | 51 ++++++++++++++++++++ drivers/net/ethernet/mellanox/mlx5/core/port.c | 56 ++++++++++++++++++---- include/linux/ethtool.h | 8 ++++ include/linux/mlx5/mlx5_ifc.h | 22 +++++++-- include/linux/mlx5/port.h | 5 ++ include/uapi/linux/ethtool.h | 20 ++++++++ net/core/ethtool.c | 39 +++++++++++++++ 7 files changed, 188 insertions(+), 13 deletions(-) -- 1.8.3.1