[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <1752589821-145787-1-git-send-email-tariqt@nvidia.com>
Date: Tue, 15 Jul 2025 17:30:19 +0300
From: Tariq Toukan <tariqt@...dia.com>
To: Eric Dumazet <edumazet@...gle.com>, Jakub Kicinski <kuba@...nel.org>,
Paolo Abeni <pabeni@...hat.com>, Andrew Lunn <andrew+netdev@...n.ch>, "David
S. Miller" <davem@...emloft.net>
CC: Saeed Mahameed <saeedm@...dia.com>, Leon Romanovsky <leon@...nel.org>,
Tariq Toukan <tariqt@...dia.com>, Mark Bloch <mbloch@...dia.com>, "Jonathan
Corbet" <corbet@....net>, <netdev@...r.kernel.org>,
<linux-rdma@...r.kernel.org>, <linux-doc@...r.kernel.org>,
<linux-kernel@...r.kernel.org>, Dragos Tatulea <dtatulea@...dia.com>
Subject: [PATCH net-next V3 0/2] net/mlx5e: Add support for PCIe congestion events
Hi,
This is V3. Find V2 here:
https://lore.kernel.org/all/1752130292-22249-1-git-send-email-tariqt@nvidia.com/
Find detailed feature description by Dragos below [1].
Regards,
Tariq
V3:
- Dropped sysfs configuration patch.
- Fixed compilation issue when !CONFIG_MLX5_CORE_EN.
- Updated cover letter description.
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.
Planned followup patches:
- Allow configuration of thresholds through devlink.
- Add ethtool counter for wakeups which did not result in any state
change.
Dragos Tatulea (2):
net/mlx5e: Create/destroy PCIe Congestion Event object
net/mlx5e: Add device PCIe congestion ethtool stats
.../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 | 315 ++++++++++++++++++
.../mellanox/mlx5/core/en/pcie_cong_event.h | 10 +
.../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 | 3 +
.../ethernet/mellanox/mlx5/core/mlx5_core.h | 13 +
10 files changed, 381 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: 06baf9bfa6ca8db7d5f32e12e27d1dc1b7cb3a8a
--
2.31.1
Powered by blists - more mailing lists