[PATCH] net/nfp: fix return path in TSO processing function

Niklas Söderlund niklas.soderlund at corigine.com
Fri Nov 18 17:23:06 CET 2022


From: Fei Qin <fei.qin at corigine.com>

When enable TSO, nfp_net_nfdk_tx_tso() fills segment information in Tx
descriptor. However, the return path for TSO is lost and the LSO related
fields of Tx descriptor is filled with zeros which prevents packets from
being sent.

This patch fixes the return path in TSO processing function to make sure
TSO works fine.

Fixes: c73dced48c8c ("net/nfp: add NFDk Tx")
Cc: stable at dpdk.org

Signed-off-by: Fei Qin <fei.qin at corigine.com>
Reviewed-by: Niklas Söderlund <niklas.soderlund at corigine.com>
Reviewed-by: Chaoyong He <chaoyong.he at corigine.com>
Signed-off-by: Niklas Söderlund <niklas.soderlund at corigine.com>
---
 drivers/net/nfp/nfp_rxtx.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/net/nfp/nfp_rxtx.c b/drivers/net/nfp/nfp_rxtx.c
index 38377ca2182e..01cffdfde0b4 100644
--- a/drivers/net/nfp/nfp_rxtx.c
+++ b/drivers/net/nfp/nfp_rxtx.c
@@ -1135,6 +1135,8 @@ nfp_net_nfdk_tx_tso(struct nfp_net_txq *txq, struct rte_mbuf *mb)
 	txd.lso_hdrlen = mb->l2_len + mb->l3_len + mb->l4_len;
 	txd.lso_totsegs = (mb->pkt_len + mb->tso_segsz) / mb->tso_segsz;
 
+	return txd.raw;
+
 clean_txd:
 	txd.l3_offset = 0;
 	txd.l4_offset = 0;
-- 
2.38.1



More information about the stable mailing list