[dpdk-dev] [PATCH] ixgbe:Add write memory barrier for recv pkts.
WangDong
dong.wang.pro at hotmail.com
Sat Apr 11 17:33:35 CEST 2015
Like transmit packets, before update receive descriptor's tail pointer, rte_wmb() should be added after writing recv descriptor.
Signed-off-by: Dong Wang <dong.wang.pro at hotmail.com>
---
lib/librte_pmd_ixgbe/ixgbe_rxtx.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/lib/librte_pmd_ixgbe/ixgbe_rxtx.c b/lib/librte_pmd_ixgbe/ixgbe_rxtx.c
index 9da2c7e..d504688 100644
--- a/lib/librte_pmd_ixgbe/ixgbe_rxtx.c
+++ b/lib/librte_pmd_ixgbe/ixgbe_rxtx.c
@@ -1338,6 +1338,9 @@ ixgbe_recv_pkts(void *rx_queue, struct rte_mbuf **rx_pkts,
*/
rx_pkts[nb_rx++] = rxm;
}
+
+ rte_wmb();
+
rxq->rx_tail = rx_id;
/*
@@ -1595,6 +1598,8 @@ ixgbe_recv_scattered_pkts(void *rx_queue, struct rte_mbuf **rx_pkts,
first_seg = NULL;
}
+ rte_wmb();
+
/*
* Record index of the next RX descriptor to probe.
*/
--
1.9.1
More information about the dev
mailing list