[PATCH] ethdev: document xstats API assumption
From: Ferruh Yigit <hidden>
Date: 2018-06-28 13:16:23
Subsystem:
library code, the rest · Maintainers:
Andrew Morton, Linus Torvalds
Documents the assumption that 'xstats[i].id == i' and
key=xstats_names[i].name, value=xstats[i].value
xstats[i].id is still used for xstats _by_id() APIs.
This patch reverts some part of the commit 6d52d1d4afb4 ("ethdev:
clarify extended statistics documentation")
Signed-off-by: Ferruh Yigit <redacted>
---
Cc: David Marchand <redacted>
Cc: Olivier Matz <redacted>
Cc: Remy Horton <redacted>
---
lib/librte_ethdev/rte_ethdev.h | 22 +++++++++++++++++++---
1 file changed, 19 insertions(+), 3 deletions(-)
diff --git a/lib/librte_ethdev/rte_ethdev.h b/lib/librte_ethdev/rte_ethdev.h
index 5760f45d3..261dabafb 100644
--- a/lib/librte_ethdev/rte_ethdev.h
+++ b/lib/librte_ethdev/rte_ethdev.h@@ -2008,6 +2008,15 @@ int rte_eth_stats_reset(uint16_t port_id); /** * Retrieve names of extended statistics of an Ethernet device. * + * There is an assumption that 'xstat_names' and 'xstats' arrays are matched + * by array index: + * xstats_names[i].name => xstats[i].value + * + * And the array index is same with id field of 'struct rte_eth_xstat': + * xstats[i].id == i + * + * This assumption makes key-value pair matching less flexible but simpler. + * * @param port_id * The port identifier of the Ethernet device. * @param xstats_names
@@ -2032,13 +2041,20 @@ int rte_eth_xstats_get_names(uint16_t port_id, /** * Retrieve extended statistics of an Ethernet device. * + * There is an assumption that 'xstat_names' and 'xstats' arrays are matched + * by array index: + * xstats_names[i].name => xstats[i].value + * + * And the array index is same with id field of 'struct rte_eth_xstat': + * xstats[i].id == i + * + * This assumption makes key-value pair matching less flexible but simpler. + * * @param port_id * The port identifier of the Ethernet device. * @param xstats * A pointer to a table of structure of type *rte_eth_xstat* - * to be filled with device statistics ids and values: id is the - * index of the name string in xstats_names (see rte_eth_xstats_get_names()), - * and value is the statistic counter. + * to be filled with device statistics ids and values. * This parameter can be set to NULL if n is 0. * @param n * The size of the xstats array (number of elements).
--
2.17.1