if (idx % 2)
{
+ vlib_thread_main_t *thm = vlib_get_thread_main ();
vec_validate_aligned (vif->txq_vrings, TX_QUEUE_ACCESS (idx),
CLIB_CACHE_LINE_BYTES);
vring = vec_elt_at_index (vif->txq_vrings, TX_QUEUE_ACCESS (idx));
+ if (thm->n_vlib_mains > 1)
+ clib_spinlock_init (&vring->lockp);
}
else
{
if (vring->avail)
clib_mem_free (vring->avail);
vec_free (vring->buffers);
+ clib_spinlock_free (&vring->lockp);
return 0;
}