When advancing Tx ring index (txq->wqe_ci) in txq_scatter_v(), the title
descriptor of multi-packet send isn't taken into account if it doesn't
cross 64B boundary.

Fixes: 6cb559d67b83 ("net/mlx5: add vectorized Rx/Tx burst for x86")

Signed-off-by: Yongseok Koh <ys...@mellanox.com>
Acked-by: Nelio Laranjeiro <nelio.laranje...@6wind.com>
---
 drivers/net/mlx5/mlx5_rxtx_vec_sse.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/net/mlx5/mlx5_rxtx_vec_sse.c 
b/drivers/net/mlx5/mlx5_rxtx_vec_sse.c
index 95e96baa2..0a65502fb 100644
--- a/drivers/net/mlx5/mlx5_rxtx_vec_sse.c
+++ b/drivers/net/mlx5/mlx5_rxtx_vec_sse.c
@@ -288,8 +288,7 @@ txq_scatter_v(struct txq *txq, struct rte_mbuf **pkts, 
uint16_t pkts_n)
                        (*txq->elts)[elts_head++ & elts_m] = buf;
                        buf = buf->next;
                } while (--segs_n);
-               if (ds % nb_dword_per_wqebb)
-                       ++wqe_ci;
+               ++wqe_ci;
                /* Fill CTRL in the header. */
                ctrl = _mm_set_epi32(0, 0, txq->qp_num_8s | ds,
                                     MLX5_OPC_MOD_MPW << 24 |
-- 
2.11.0

Reply via email to