Hi, This is V2. Previous one submitted by Mark. Find it here: https://lore.kernel.org/all/20250619113721.60201-1-mbloch@xxxxxxxxxx/ Find detailed feature description by Dragos below [1]. Regards, Tariq V2: - Rebase on top of the IFC patches, they got pulled through mlx5-next. [1] PCIe congestion events are events generated by the firmware when the device side has sustained PCIe inbound or outbound traffic above certain thresholds. The high and low threshold are hysteresis thresholds to prevent flapping: once the high threshold has been reached, a low threshold event will be triggered only after the bandwidth usage went below the low threshold. This series adds support for receiving and exposing such events as ethtool counters. 2 new pairs of counters are exposed: pci_bw_in/outbound_high/low. These should help the user understand if the device PCI is under pressure. The thresholds are configurable via sysfs when the feature is supported. Dragos Tatulea (3): net/mlx5e: Create/destroy PCIe Congestion Event object net/mlx5e: Add device PCIe congestion ethtool stats net/mlx5e: Make PCIe congestion event thresholds configurable .../ethernet/mellanox/mlx5/counters.rst | 32 ++ .../net/ethernet/mellanox/mlx5/core/Makefile | 2 +- drivers/net/ethernet/mellanox/mlx5/core/en.h | 2 + .../mellanox/mlx5/core/en/pcie_cong_event.c | 464 ++++++++++++++++++ .../mellanox/mlx5/core/en/pcie_cong_event.h | 11 + .../net/ethernet/mellanox/mlx5/core/en_main.c | 3 + .../ethernet/mellanox/mlx5/core/en_stats.c | 1 + .../ethernet/mellanox/mlx5/core/en_stats.h | 1 + drivers/net/ethernet/mellanox/mlx5/core/eq.c | 4 + 9 files changed, 519 insertions(+), 1 deletion(-) create mode 100644 drivers/net/ethernet/mellanox/mlx5/core/en/pcie_cong_event.c create mode 100644 drivers/net/ethernet/mellanox/mlx5/core/en/pcie_cong_event.h base-commit: c65d34296b2252897e37835d6007bbd01b255742 -- 2.31.1