aboutsummaryrefslogtreecommitdiffstats
path: root/vnet/vnet/devices/af_packet/af_packet.c
diff options
context:
space:
mode:
authorDamjan Marion <damarion@cisco.com>2016-09-07 11:54:22 +0200
committerFlorin Coras <florin.coras@gmail.com>2016-09-12 09:45:51 +0000
commit553f6bd8530b28f60f9e58da93849dae509a9328 (patch)
treec0737d11898df15095f7683a18790b6a1522df8b /vnet/vnet/devices/af_packet/af_packet.c
parent019481ba1d2d6e5b82a98f10d7d6d4bdab9e8380 (diff)
af_packet: allocate per-worker list of free buffers
Change-Id: I7850f04787fa7ce10c0ae8adefa166c91420f02d Signed-off-by: Damjan Marion <damarion@cisco.com>
Diffstat (limited to 'vnet/vnet/devices/af_packet/af_packet.c')
-rw-r--r--vnet/vnet/devices/af_packet/af_packet.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/vnet/vnet/devices/af_packet/af_packet.c b/vnet/vnet/devices/af_packet/af_packet.c
index cb5f88a2cf4..17eddd658c0 100644
--- a/vnet/vnet/devices/af_packet/af_packet.c
+++ b/vnet/vnet/devices/af_packet/af_packet.c
@@ -339,11 +339,15 @@ static clib_error_t *
af_packet_init (vlib_main_t * vm)
{
af_packet_main_t *apm = &af_packet_main;
+ vlib_thread_main_t *tm = vlib_get_thread_main ();
memset (apm, 0, sizeof (af_packet_main_t));
mhash_init_vec_string (&apm->if_index_by_host_if_name, sizeof (uword));
+ vec_validate_aligned (apm->rx_buffers, tm->n_vlib_mains - 1,
+ CLIB_CACHE_LINE_BYTES);
+
return 0;
}