The maximum number of metrics is hardcoded at 256. This severely limits the usefulness of the library. It should be configurable like other limits in DPDK.
Fixes: 349950ddb9c5 ("metrics: add information metrics library") Cc: remy.hor...@intel.com Cc: ciara.po...@intel.com Signed-off-by: Stephen Hemminger <step...@networkplumber.org> --- config/common_base | 1 + config/meson.build | 2 +- lib/librte_metrics/rte_metrics.h | 1 - 3 files changed, 2 insertions(+), 2 deletions(-) diff --git a/config/common_base b/config/common_base index fe30c515e5a3..f0212faec80c 100644 --- a/config/common_base +++ b/config/common_base @@ -917,6 +917,7 @@ CONFIG_RTE_LIBRTE_JOBSTATS=y # Compile the device metrics library # CONFIG_RTE_LIBRTE_METRICS=y +CONFIG_RTE_METRICS_MAX_METRICS=256 # # Compile the bitrate statistics library diff --git a/config/meson.build b/config/meson.build index 351e268c1f5b..cc8cb8fbf2f0 100644 --- a/config/meson.build +++ b/config/meson.build @@ -238,7 +238,7 @@ dpdk_conf.set('RTE_ENABLE_TRACE_FP', get_option('enable_trace_fp')) dpdk_conf.set('RTE_MAX_VFIO_GROUPS', 64) dpdk_conf.set('RTE_DRIVER_MEMPOOL_BUCKET_SIZE_KB', 64) dpdk_conf.set('RTE_LIBRTE_DPAA2_USE_PHYS_IOVA', true) - +dpdk_conf.set('RTE_METRICS_MAX_METRICS', 256) compile_time_cpuflags = [] subdir(arch_subdir) diff --git a/lib/librte_metrics/rte_metrics.h b/lib/librte_metrics/rte_metrics.h index fbe64ddf2b47..40f015b8bb93 100644 --- a/lib/librte_metrics/rte_metrics.h +++ b/lib/librte_metrics/rte_metrics.h @@ -34,7 +34,6 @@ extern int metrics_initialized; /** Maximum length of metric name (including null-terminator) */ #define RTE_METRICS_MAX_NAME_LEN 64 -#define RTE_METRICS_MAX_METRICS 256 /** * Global metric special id. -- 2.26.2