diff options
Diffstat (limited to 'src/vlib/stats/init.c')
-rw-r--r-- | src/vlib/stats/init.c | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/src/vlib/stats/init.c b/src/vlib/stats/init.c index 2a7b6f53c53..16a47c2f78d 100644 --- a/src/vlib/stats/init.c +++ b/src/vlib/stats/init.c @@ -45,7 +45,6 @@ vlib_stats_init (vlib_main_t *vm) vlib_stats_shared_header_t *shared_header; vlib_stats_collector_reg_t reg = {}; - void *oldheap; uword memory_size, sys_page_sz; int mfd; char *mem_name = "stat segment"; @@ -94,16 +93,14 @@ vlib_stats_init (vlib_main_t *vm) sm->n_locks = 0; clib_spinlock_init (sm->stat_segment_lockp); - oldheap = clib_mem_set_heap (sm->heap); - /* Set up the name to counter-vector hash table */ - sm->directory_vector = 0; + sm->directory_vector = + vec_new_heap (typeof (sm->directory_vector[0]), STAT_COUNTERS, heap); sm->dir_vector_first_free_elt = CLIB_U32_MAX; shared_header->epoch = 1; /* Scalar stats and node counters */ - vec_validate (sm->directory_vector, STAT_COUNTERS - 1); #define _(E, t, n, p) \ strcpy (sm->directory_vector[STAT_COUNTER_##E].name, p "/" #n); \ sm->directory_vector[STAT_COUNTER_##E].type = STAT_DIR_TYPE_##t; @@ -112,8 +109,6 @@ vlib_stats_init (vlib_main_t *vm) /* Save the vector in the shared segment, for clients */ shared_header->directory_vector = sm->directory_vector; - clib_mem_set_heap (oldheap); - vlib_stats_register_mem_heap (heap); reg.collect_fn = vector_rate_collector_fn; |