This patchset extends statistics reporting to include peak and average data-rate metrics. It comes in two parts: a statistics reporting library, and a bitrate calculation library that uses it. This structure is intended to seperate statistic reporting from ethdev and allow more flexible metric registration.
-- v4 changes: * References to 16.11 changed to 17.02 * Fetching of non-port values was broken * Added sanity checks to value fetching * rte_stat_value renamed to rte_metric_value * Corrected doxygen descriptions * Added MAINTAINERS entries * Added #ifdef directives to bitrate code in test-pmd v3 changes: * Marked rte_stats_bitrate_s as internal * Minor integer roundoff correction * Coding style corrections * Removed spurious object allocation * Changes to rte_metrics.[ch] moved from Patch 2/3 to 1/3. * Reintroduced non-port values (RTE_METRICS_NONPORT) * Added spinlocks to metric library * Removed spurious test registration/update * Added release notes entries v2 changes: * Uses a new metrics library rather than being part of ethdev Remy Horton (3): lib: add information metrics library lib: add bitrate statistics library app/test-pmd: add support for bitrate statistics MAINTAINERS | 9 + app/test-pmd/testpmd.c | 36 +++ config/common_base | 10 + doc/api/doxy-api-index.md | 2 + doc/api/doxy-api.conf | 2 + doc/guides/rel_notes/release_17_02.rst | 11 + lib/Makefile | 2 + lib/librte_bitratestats/Makefile | 53 ++++ lib/librte_bitratestats/rte_bitrate.c | 128 +++++++++ lib/librte_bitratestats/rte_bitrate.h | 80 ++++++ .../rte_bitratestats_version.map | 9 + lib/librte_metrics/Makefile | 51 ++++ lib/librte_metrics/rte_metrics.c | 308 +++++++++++++++++++++ lib/librte_metrics/rte_metrics.h | 190 +++++++++++++ lib/librte_metrics/rte_metrics_version.map | 13 + mk/rte.app.mk | 3 + 16 files changed, 907 insertions(+) create mode 100644 lib/librte_bitratestats/Makefile create mode 100644 lib/librte_bitratestats/rte_bitrate.c create mode 100644 lib/librte_bitratestats/rte_bitrate.h create mode 100644 lib/librte_bitratestats/rte_bitratestats_version.map create mode 100644 lib/librte_metrics/Makefile create mode 100644 lib/librte_metrics/rte_metrics.c create mode 100644 lib/librte_metrics/rte_metrics.h create mode 100644 lib/librte_metrics/rte_metrics_version.map -- 2.5.5