summaryrefslogtreecommitdiff
path: root/lib/librte_pmd_ixgbe/ixgbe_rxtx_vec.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/librte_pmd_ixgbe/ixgbe_rxtx_vec.c')
-rw-r--r--lib/librte_pmd_ixgbe/ixgbe_rxtx_vec.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/librte_pmd_ixgbe/ixgbe_rxtx_vec.c b/lib/librte_pmd_ixgbe/ixgbe_rxtx_vec.c
index 579bc46..c1b5a78 100644
--- a/lib/librte_pmd_ixgbe/ixgbe_rxtx_vec.c
+++ b/lib/librte_pmd_ixgbe/ixgbe_rxtx_vec.c
@@ -739,6 +739,9 @@ ixgbe_rxq_vec_setup(struct igb_rx_queue *rxq)
mb_def.buf_len = rxq->mb_pool->elt_size - sizeof(struct rte_mbuf);
mb_def.port = rxq->port_id;
rte_mbuf_refcnt_set(&mb_def, 1);
+
+ /* prevent compiler reordering: rearm_data covers previous fields */
+ rte_compiler_barrier();
rxq->mbuf_initializer = *((uint64_t *)&mb_def.rearm_data);
return 0;
}