With TX pause enabled, if a device cannot deliver received frames to
the stack (e.g., during a system hang), it may generate excessive pause
frames causing a pause storm. This series updates the uAPI to track TX
pause storm events as part of the pause stats (p1), proposes using the
existing pfc-prevention-tout knob to configure the storm watchdog (p2),
adds pause storm protection support for fbnic (p3), and leverages p1
to provide observability into these events for the fbnic (p4) and mlx5
(p5) drivers.
Changelog:
- V4: Drop RFC. No feedback received on V3.
- V3(RFC):
https://lore.kernel.org/netdev/20260223174914.74461-1-mohsin.bashr@gmail.com/
- V2:
https://lore.kernel.org/20260207010525.3808842-1-mohsin.bashr@gmail.com/
- V1:
https://lore.kernel.org/20260122192158.428882-1-mohsin.bashr@gmail.com/
Mohsin Bashir (5):
net: ethtool: Track pause storm events
net: ethtool: Update doc for tunable
eth: fbnic: Add protection against pause storm
eth: fbnic: Fetch TX pause storm stats
eth: mlx5: Move pause storm errors to pause stats
Documentation/netlink/specs/ethtool.yaml | 13 ++
.../ethernet/mellanox/mlx5/core/en_stats.c | 30 +++++
drivers/net/ethernet/meta/fbnic/fbnic.h | 3 +
drivers/net/ethernet/meta/fbnic/fbnic_csr.h | 11 ++
.../net/ethernet/meta/fbnic/fbnic_ethtool.c | 46 ++++++++
.../net/ethernet/meta/fbnic/fbnic_hw_stats.h | 1 +
drivers/net/ethernet/meta/fbnic/fbnic_irq.c | 2 +
drivers/net/ethernet/meta/fbnic/fbnic_mac.c | 111 ++++++++++++++++++
drivers/net/ethernet/meta/fbnic/fbnic_mac.h | 27 +++++
drivers/net/ethernet/meta/fbnic/fbnic_pci.c | 5 +
include/linux/ethtool.h | 2 +
include/uapi/linux/ethtool.h | 2 +-
.../uapi/linux/ethtool_netlink_generated.h | 1 +
net/ethtool/pause.c | 4 +-
14 files changed, 256 insertions(+), 2 deletions(-)
--
2.47.3