|
|
Subscribe / Log in / New account

sfc: per-queue stats

From:  edward.cree-AT-amd.com
To:  <linux-net-drivers-AT-amd.com>, <davem-AT-davemloft.net>, <kuba-AT-kernel.org>, <edumazet-AT-google.com>, <pabeni-AT-redhat.com>
Subject:  [RFC PATCH v3 net-next 0/7] sfc: per-queue stats
Date:  Wed, 18 Sep 2024 17:14:22 +0100
Message-ID:  <cover.1726593632.git.ecree.xilinx@gmail.com>
Cc:  Edward Cree <ecree.xilinx-AT-gmail.com>, <netdev-AT-vger.kernel.org>, <habetsm.xilinx-AT-gmail.com>, <jacob.e.keller-AT-intel.com>
Archive-link:  Article

From: Edward Cree <ecree.xilinx@gmail.com>

This series implements the netdev_stat_ops interface for per-queue
 statistics in the sfc driver, partly using existing counters that
 were originally added for ethtool -S output.

Changed in v3:
* make TX stats count completions rather than enqueues
* add new patch #4 to account for XDP TX separately from netdev
  traffic and include it in base_stats
* move the tx_queue->old_* members out of the fastpath cachelines
* note on patch #6 that our hw_gso stats still count enqueues
* RFC since net-next is closed right now

Changed in v2:
* exclude (dedicated) XDP TXQ stats from per-queue TX stats
* explain patch #3 better

Edward Cree (7):
  sfc: remove obsolete counters from struct efx_channel
  sfc: implement basic per-queue stats
  sfc: add n_rx_overlength to ethtool stats
  sfc: account XDP TXes in netdev base stats
  sfc: implement per-queue rx drop and overrun stats
  sfc: implement per-queue TSO (hw_gso) stats
  sfc: add per-queue RX bytes stats

 drivers/net/ethernet/sfc/ef100_rx.c       |   5 +-
 drivers/net/ethernet/sfc/efx.c            | 109 ++++++++++++++++++++++
 drivers/net/ethernet/sfc/efx_channels.c   |   6 ++
 drivers/net/ethernet/sfc/efx_channels.h   |   7 ++
 drivers/net/ethernet/sfc/ethtool_common.c |   3 +-
 drivers/net/ethernet/sfc/net_driver.h     |  47 +++++++++-
 drivers/net/ethernet/sfc/rx.c             |   5 +-
 drivers/net/ethernet/sfc/rx_common.c      |   3 +
 drivers/net/ethernet/sfc/tx.c             |   6 +-
 drivers/net/ethernet/sfc/tx_common.c      |  33 +++++--
 drivers/net/ethernet/sfc/tx_common.h      |   4 +-
 11 files changed, 210 insertions(+), 18 deletions(-)




Copyright © 2024, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds