plugins/dpdk: align memory to avoid potential segfault and false sharing 04/8804/2
authorGeorgina Sheehan <[email protected]>
Thu, 12 Oct 2017 11:13:59 +0000 (12:13 +0100)
committerDamjan Marion <[email protected]>
Sat, 14 Oct 2017 09:10:59 +0000 (09:10 +0000)
VPP-1025

Change-Id: I87bb8f38974a7be274c1b1d205f5513e7d068e48
Signed-off-by: Georgina <[email protected]>
src/plugins/dpdk/buffer.c

index e09d801..02a11b8 100644 (file)
@@ -188,7 +188,7 @@ fill_free_list (vlib_main_t * vm,
   /* Always allocate new buffers in reasonably large sized chunks. */
   n = clib_max (n, fl->min_n_buffers_each_physmem_alloc);
 
-  vec_validate (vm->mbuf_alloc_list, n - 1);
+  vec_validate_aligned (vm->mbuf_alloc_list, n - 1, CLIB_CACHE_LINE_BYTES);
 
   if (rte_mempool_get_bulk (rmp, vm->mbuf_alloc_list, n) < 0)
     return 0;