From 2e45b7a3cb16d2b4fdb8c2ad50c1a5a2361d19fa Mon Sep 17 00:00:00 2001 From: Konstantin Ananyev Date: Fri, 29 Jul 2016 13:52:58 +0100 Subject: [PATCH] udpfwd: avoid loads blocked by stores while updating mbuf tx_offload Change-Id: Id0b6e2cf176493188f6628f92700a3095ab6af85 Signed-off-by: Konstantin Ananyev --- examples/udpfwd/pkt.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/examples/udpfwd/pkt.c b/examples/udpfwd/pkt.c index 860d9a3..af87b08 100644 --- a/examples/udpfwd/pkt.c +++ b/examples/udpfwd/pkt.c @@ -16,12 +16,18 @@ #include "netbe.h" #include +static inline uint64_t +_mbuf_tx_offload(uint64_t il2, uint64_t il3, uint64_t il4, uint64_t tso, + uint64_t ol3, uint64_t ol2) +{ + return il2 | il3 << 7 | il4 << 16 | tso << 24 | ol3 << 40 | ol2 << 49; +} + + static inline void fill_pkt_hdr_len(struct rte_mbuf *m, uint32_t l2, uint32_t l3, uint32_t l4) { - m->l2_len = l2; - m->l3_len = l3; - m->l4_len = l4; + m->tx_offload = _mbuf_tx_offload(l2, l3, l4, 0, 0, 0); } static inline int -- 2.16.6