diff options
author | Benoît Ganne <bganne@cisco.com> | 2019-09-30 12:39:55 +0200 |
---|---|---|
committer | Ole Trøan <otroan@employees.org> | 2019-09-30 15:30:22 +0000 |
commit | dba00cad1a2e41b4974911793cc76eab81a6e30e (patch) | |
tree | e045f7e5bff56469f94ef6f7f0d20235cb443fb1 | |
parent | bb5ff4e4bb6dbf679a49fc9786718ad6fe229e84 (diff) |
stats: fix per-worker stat vector length
Type: fix
Change-Id: I198a2312f5fc6e922c8a6c51ba7248ce6e236f81
Signed-off-by: Benoît Ganne <bganne@cisco.com>
-rw-r--r-- | src/vpp/stats/stat_segment.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/vpp/stats/stat_segment.c b/src/vpp/stats/stat_segment.c index 11e72b2d87c..b978d37a091 100644 --- a/src/vpp/stats/stat_segment.c +++ b/src/vpp/stats/stat_segment.c @@ -558,13 +558,14 @@ do_stat_segment_updates (stat_segment_main_t * sm) if (PREDICT_FALSE (num_worker_threads_set == 0)) { void *oldheap = clib_mem_set_heap (sm->heap); + int workers = clib_max (1, vec_len (vlib_mains) - 1); vlib_stat_segment_lock (); - sm->directory_vector[STAT_COUNTER_NUM_WORKER_THREADS].value = - vec_len (vlib_mains) > 1 ? vec_len (vlib_mains) - 1 : 1; + sm->directory_vector[STAT_COUNTER_NUM_WORKER_THREADS].value = workers; stat_validate_counter_vector (&sm->directory_vector - [STAT_COUNTER_VECTOR_RATE_PER_WORKER], 0); + [STAT_COUNTER_VECTOR_RATE_PER_WORKER], + workers); num_worker_threads_set = 1; vlib_stat_segment_unlock (); clib_mem_set_heap (oldheap); |