Fixes: 02bb06aca20f ("net/mlx5: use vector types to speed up processing")
Reported-by: Thomas Monjalon <thomas.monja...@6wind.com> Signed-off-by: Nelio Laranjeiro <nelio.laranje...@6wind.com> --- Please squash it in the original patch if possible. --- drivers/net/mlx5/mlx5_rxtx.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/drivers/net/mlx5/mlx5_rxtx.c b/drivers/net/mlx5/mlx5_rxtx.c index 8cf68c5..0177428 100644 --- a/drivers/net/mlx5/mlx5_rxtx.c +++ b/drivers/net/mlx5/mlx5_rxtx.c @@ -390,6 +390,7 @@ mlx5_tx_burst(void *dpdk_txq, struct rte_mbuf **pkts, uint16_t pkts_n) uint32_t length; unsigned int ds = 0; uintptr_t addr; + uint64_t naddr; uint16_t pkt_inline_sz = MLX5_WQE_DWORD_SIZE; uint8_t ehdr[2]; uint8_t cs_flags = 0; @@ -515,12 +516,12 @@ mlx5_tx_burst(void *dpdk_txq, struct rte_mbuf **pkts, uint16_t pkts_n) ds = 3; use_dseg: /* Add the remaining packet as a simple ds. */ - addr = htonll(addr); + naddr = htonll(addr); *dseg = (rte_v128u32_t){ htonl(length), txq_mp2mr(txq, txq_mb2mp(buf)), - addr, - addr >> 32, + naddr, + naddr >> 32, }; ++ds; if (!segs_n) @@ -554,12 +555,12 @@ mlx5_tx_burst(void *dpdk_txq, struct rte_mbuf **pkts, uint16_t pkts_n) total_length += length; #endif /* Store segment information. */ - addr = htonll(rte_pktmbuf_mtod(buf, uintptr_t)); + naddr = htonll(rte_pktmbuf_mtod(buf, uintptr_t)); *dseg = (rte_v128u32_t){ htonl(length), txq_mp2mr(txq, txq_mb2mp(buf)), - addr, - addr >> 32, + naddr, + naddr >> 32, }; (*txq->elts)[elts_head] = buf; elts_head = (elts_head + 1) & (elts_n - 1); -- 2.1.4