The per-queue stats mapping mechanism
(rte_eth_dev_set_{rx,tx}_queue_stats_mapping
and the queue_stats_mapping_set ethdev op) was a workaround for hardware that
could only expose a limited number of queue stat registers. It let an
application
fold many queues onto a small set of counters. Since 25.11 queue statistics are
filled in directly by the ethdev layer indexed by queue id, so the mapping is no
longer needed; the functions were deprecated then by commit 2863cbd9ee6d.
This series finishes the job. The drivers that still implemented the op are
converted to report queue stats directly by queue id (bounded by
RTE_ETHDEV_QUEUE_STAT_CNTRS), and the op, the two public functions, their trace
points, and the documentation are removed from ethdev. The leftover per-driver
mapping tables, accessor macros, and init code go away with them.
This is an RFC against 26.11, where the ABI break from removing the two stable
symbols is expected. The Removed Items / ABI Changes release notes entry will be
added once the 26.11 notes file is opened.
Stephen Hemminger (7):
net/virtio: remove unused queue stats mapping
net/enic: remove queue_stats_mapping ethdev_op
net/cnxk: remove queue stats mapping
net/e1000: remove queue stats mapping
net/ixgbe: remove queue stats mapping
net/txgbe: remove queue stats mapping
ethdev: remove support for queue stats mapping
doc/guides/nics/features.rst | 7 --
doc/guides/rel_notes/deprecation.rst | 6 --
drivers/net/cnxk/cnxk_ethdev.c | 1 -
drivers/net/cnxk/cnxk_ethdev.h | 6 --
drivers/net/cnxk/cnxk_stats.c | 76 ++++++++------------
drivers/net/enic/enic_ethdev.c | 11 ---
drivers/net/intel/e1000/igc_ethdev.c | 54 ++------------
drivers/net/intel/e1000/igc_ethdev.h | 2 -
drivers/net/intel/ixgbe/ixgbe_ethdev.c | 97 --------------------------
drivers/net/intel/ixgbe/ixgbe_ethdev.h | 9 ---
drivers/net/txgbe/txgbe_ethdev.c | 87 ++---------------------
drivers/net/txgbe/txgbe_ethdev.h | 13 ----
drivers/net/virtio/virtio_ethdev.c | 21 ------
lib/ethdev/ethdev_driver.h | 11 ---
lib/ethdev/ethdev_trace.h | 20 ------
lib/ethdev/ethdev_trace_points.c | 6 --
lib/ethdev/rte_ethdev.c | 62 ----------------
lib/ethdev/rte_ethdev.h | 45 ------------
18 files changed, 45 insertions(+), 489 deletions(-)
--
2.53.0