From 2482a99f303873175c5781d3c685eaa9e17cfaf7 Mon Sep 17 00:00:00 2001 From: Jeff Guo Date: Wed, 20 May 2020 17:44:14 -0400 Subject: [PATCH] net/iavf: fix setting L2TAG Base on HW, if a packet is split into multiple segments, the L2TAG should only be valid on the last Rx descriptor. So fix it by setting L2TAG into mbuf when processing the last split packet. Fixes: 319c421f3890 ("net/avf: enable SSE Rx Tx") Cc: stable@dpdk.org Signed-off-by: Jeff Guo Acked-by: Qi Zhang --- drivers/net/iavf/iavf_rxtx_vec_common.h | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/net/iavf/iavf_rxtx_vec_common.h b/drivers/net/iavf/iavf_rxtx_vec_common.h index a6ba227584..25bb502de2 100644 --- a/drivers/net/iavf/iavf_rxtx_vec_common.h +++ b/drivers/net/iavf/iavf_rxtx_vec_common.h @@ -33,6 +33,7 @@ reassemble_packets(struct iavf_rx_queue *rxq, struct rte_mbuf **rx_bufs, if (!split_flags[buf_idx]) { /* it's the last packet of the set */ start->hash = end->hash; + start->vlan_tci = end->vlan_tci; start->ol_flags = end->ol_flags; /* we need to strip crc for the whole packet */ start->pkt_len -= rxq->crc_len; -- 2.20.1