mlx5: fix scattered Tx with too many segments

Buffers with too many segments are linearized to overcome
MLX5_PMD_SGE_WR_N, unfortunately the last segment is never sent.

Fixes: 3ee8444608 ("mlx5: support scattered Rx and Tx")

Signed-off-by: Jesper Wramberg <jesper.wramberg@gmail.com>
Signed-off-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
This commit is contained in:
Adrien Mazarguil 2015-11-23 15:44:45 +01:00 committed by Thomas Monjalon
parent 2921677f15
commit 34d0626306

View File

@ -325,6 +325,8 @@ tx_burst_sg(struct txq *txq, unsigned int segs, struct txq_elt *elt,
sge->length = size; sge->length = size;
sge->lkey = txq->mr_linear->lkey; sge->lkey = txq->mr_linear->lkey;
sent_size += size; sent_size += size;
/* Include last segment. */
segs++;
} }
return (struct tx_burst_sg_ret){ return (struct tx_burst_sg_ret){
.length = sent_size, .length = sent_size,