[PATCH net-next v3 0/2] net: mana: Refactor GF stats handling and add rx_missed_errors counter

Erni Sri Satya Vennela posted 2 patches 1 month ago
drivers/net/ethernet/microsoft/mana/mana_en.c | 101 ++++++++++++------
.../ethernet/microsoft/mana/mana_ethtool.c    |  85 ++++++++-------
include/net/mana/gdma.h                       |   6 +-
include/net/mana/mana.h                       |  18 +++-
4 files changed, 130 insertions(+), 80 deletions(-)
[PATCH net-next v3 0/2] net: mana: Refactor GF stats handling and add rx_missed_errors counter
Posted by Erni Sri Satya Vennela 1 month ago
Restructure mana_query_gf_stats() to operate on the per-VF mana_context,
instead of per-port statistics. Introduce mana_ethtool_hc_stats to
isolate hardware counter statistics and update the
"ethtool -S <interface>" output to expose all relevant counters while
preserving backward compatibility.

Add support for the standard rx_missed_errors counter by mapping it to
the hardware's hc_rx_discards_no_wqe metric. Introduce a
global workqueue that refreshes statistics every 2 seconds, ensuring
timely and consistent updates of hardware counters.

---
Changes in v3:
* Use schedule_delayed_work (global workqueue) instead of
  queue_delayed_work (dedicated workqueue for MANA driver).
* Update commit message for more readability.
* Use reverse x-mas tree format in mana_query_gf_stats.
Changes in v2:
* Update commit message.
* Stop rescheduling workqueue only when HWC timeout is observed.
* Introduce new variable in mana_context for detecting HWC timeout.
* Warn once in mana_get_stat64 when HWC timeout is observed.
---
Erni Sri Satya Vennela (2):
  net: mana: Move hardware counter stats from per-port to per-device
    context
  net: mana: Add standard counter rx_missed_errors

 drivers/net/ethernet/microsoft/mana/mana_en.c | 101 ++++++++++++------
 .../ethernet/microsoft/mana/mana_ethtool.c    |  85 ++++++++-------
 include/net/mana/gdma.h                       |   6 +-
 include/net/mana/mana.h                       |  18 +++-
 4 files changed, 130 insertions(+), 80 deletions(-)

-- 
2.34.1
For internal review only.