diff options
author | Damjan Marion <damarion@cisco.com> | 2019-01-21 11:48:34 +0100 |
---|---|---|
committer | Dave Barach <openvpp@barachs.net> | 2019-01-30 16:19:22 +0000 |
commit | 910d3694e8b22c9d14e5f2913d14ae149e184620 (patch) | |
tree | e4993e93e4d7dba51a5898e82bb6149a3e4bd7ba /src/vlib/main.c | |
parent | 4fd5a9d3e6abdf61f266da8400a299fe5b0eb0ed (diff) |
buffers: major cleanup and improvements
This patch introduces following changes:
- deprecated free lists which are not used and not compatible
with external buffer managers (i.e. DPDK)
- introduces native support for per-numa buffer pools
- significantly improves performance of buffer alloc and free
Change-Id: I4a8e723ae47056717afd6cac0efe87cb731b5be7
Signed-off-by: Damjan Marion <damarion@cisco.com>
Diffstat (limited to 'src/vlib/main.c')
-rw-r--r-- | src/vlib/main.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/src/vlib/main.c b/src/vlib/main.c index a64a991d438..c0ab8e129b9 100644 --- a/src/vlib/main.c +++ b/src/vlib/main.c @@ -463,7 +463,7 @@ vlib_put_next_frame (vlib_main_t * vm, vlib_frame_t *f; u32 n_vectors_in_frame; - if (vm->buffer_main->callbacks_registered == 0 && CLIB_DEBUG > 0) + if (CLIB_DEBUG > 0) vlib_put_next_frame_validate (vm, r, next_index, n_vectors_left); nf = vlib_node_runtime_get_next_frame (vm, r, next_index); @@ -987,8 +987,8 @@ format_buffer_metadata (u8 * s, va_list * args) (i32) (b->current_data), (i32) (b->current_length)); s = format (s, "current_config_index: %d, flow_id: %x, next_buffer: %x\n", b->current_config_index, b->flow_id, b->next_buffer); - s = format (s, "error: %d, n_add_refs: %d, buffer_pool_index: %d\n", - (u32) (b->error), (u32) (b->n_add_refs), + s = format (s, "error: %d, ref_count: %d, buffer_pool_index: %d\n", + (u32) (b->error), (u32) (b->ref_count), (u32) (b->buffer_pool_index)); s = format (s, "trace_index: %d, len_not_first_buf: %d\n", @@ -1993,9 +1993,6 @@ vlib_main (vlib_main_t * volatile vm, unformat_input_t * input) if ((error = vlib_call_all_init_functions (vm))) goto done; - /* Create default buffer free list. */ - vlib_buffer_create_free_list (vm, VLIB_BUFFER_DATA_SIZE, "default"); - nm->timing_wheel = clib_mem_alloc_aligned (sizeof (TWT (tw_timer_wheel)), CLIB_CACHE_LINE_BYTES); |