mbox series

[net-next,v2,0/6] ethtool HW timestamping statistics

Message ID 20240403212931.128541-1-rrameshbabu@nvidia.com (mailing list archive)
Headers show
Series ethtool HW timestamping statistics | expand

Message

Rahul Rameshbabu April 3, 2024, 9:28 p.m. UTC
The goal of this patch series is to introduce a common set of ethtool statistics
for hardware timestamping that a driver implementer can hook into. The
statistics counters added are based on what I believe are common
patterns/behaviors found across various hardware timestamping implementations
seen in the kernel tree today. The mlx5 family of devices is used as the PoC for
this patch series. Other vendors are more than welcome to chime in on this
series.

Changes since RFC v1:
        - Dropped the late statistics counter since that was not general enough
        - Dropped the layer selection attribute for timestamping statistics
        - Take Jakub's suggestion and converted to ETHTOOL_FLAG_STATS
        - Provided a working interface to query these new statistics from
          tools/net/ynl/ethtool.py

Changes since RFC v2:
        - Applied suggestion by Jakub for implementing an enumeration for
          ethtool header flags

Changes since v1:
        - Fixed scripts/kernel-doc warning in include/linux/ethtool.h

Link: https://lore.kernel.org/netdev/20240402205223.137565-1-rrameshbabu@nvidia.com/
Link: https://lore.kernel.org/netdev/20240309084440.299358-1-rrameshbabu@nvidia.com/
Link: https://lore.kernel.org/netdev/20240223192658.45893-1-rrameshbabu@nvidia.com/
Signed-off-by: Rahul Rameshbabu <rrameshbabu@nvidia.com>
---
Rahul Rameshbabu (6):
  ethtool: add interface to read Tx hardware timestamping statistics
  net/mlx5e: Introduce lost_cqe statistic counter for PTP Tx port
    timestamping CQ
  net/mlx5e: Introduce timestamps statistic counter for Tx DMA layer
  net/mlx5e: Implement ethtool hardware timestamping statistics
  netlink: specs: ethtool: add header-flags enumeration
  tools: ynl: ethtool.py: Output timestamping statistics from tsinfo-get
    operation

 Documentation/netlink/specs/ethtool.yaml      | 22 ++++++++
 .../ethernet/mellanox/mlx5/counters.rst       | 11 ++++
 Documentation/networking/ethtool-netlink.rst  |  9 ++++
 .../net/ethernet/mellanox/mlx5/core/en/ptp.c  |  1 +
 .../ethernet/mellanox/mlx5/core/en_ethtool.c  |  9 ++++
 .../ethernet/mellanox/mlx5/core/en_stats.c    | 48 +++++++++++++++++
 .../ethernet/mellanox/mlx5/core/en_stats.h    |  4 ++
 .../net/ethernet/mellanox/mlx5/core/en_tx.c   |  6 ++-
 include/linux/ethtool.h                       | 27 +++++++++-
 include/uapi/linux/ethtool_netlink.h          | 25 ++++++---
 net/ethtool/tsinfo.c                          | 52 ++++++++++++++++++-
 tools/net/ynl/ethtool.py                      | 11 +++-
 12 files changed, 214 insertions(+), 11 deletions(-)

Comments

patchwork-bot+netdevbpf@kernel.org April 6, 2024, 6:10 a.m. UTC | #1
Hello:

This series was applied to netdev/net-next.git (main)
by Jakub Kicinski <kuba@kernel.org>:

On Wed,  3 Apr 2024 14:28:38 -0700 you wrote:
> The goal of this patch series is to introduce a common set of ethtool statistics
> for hardware timestamping that a driver implementer can hook into. The
> statistics counters added are based on what I believe are common
> patterns/behaviors found across various hardware timestamping implementations
> seen in the kernel tree today. The mlx5 family of devices is used as the PoC for
> this patch series. Other vendors are more than welcome to chime in on this
> series.
> 
> [...]

Here is the summary with links:
  - [net-next,v2,1/6] ethtool: add interface to read Tx hardware timestamping statistics
    https://git.kernel.org/netdev/net-next/c/0e9c127729be
  - [net-next,v2,2/6] net/mlx5e: Introduce lost_cqe statistic counter for PTP Tx port timestamping CQ
    https://git.kernel.org/netdev/net-next/c/adda54018078
  - [net-next,v2,3/6] net/mlx5e: Introduce timestamps statistic counter for Tx DMA layer
    https://git.kernel.org/netdev/net-next/c/cd429012f078
  - [net-next,v2,4/6] net/mlx5e: Implement ethtool hardware timestamping statistics
    https://git.kernel.org/netdev/net-next/c/3579032c08c1
  - [net-next,v2,5/6] netlink: specs: ethtool: add header-flags enumeration
    https://git.kernel.org/netdev/net-next/c/ff8877b04ef2
  - [net-next,v2,6/6] tools: ynl: ethtool.py: Output timestamping statistics from tsinfo-get operation
    https://git.kernel.org/netdev/net-next/c/2e0e148c7270

You are awesome, thank you!