From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 03FBEA0093; Wed, 20 May 2020 11:26:07 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id BED3B1C437; Wed, 20 May 2020 11:26:06 +0200 (CEST) Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by dpdk.org (Postfix) with ESMTP id 789561C2EE for ; Wed, 20 May 2020 11:26:05 +0200 (CEST) IronPort-SDR: tjWFDSTStKyJWy7lbZ7hK3ho7TuskCKvm3tpAb9/kQlPfL1HGs6Ph4hOnncCZX9r1SYug14/cH 9KzZVeoxpGvQ== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 20 May 2020 02:26:04 -0700 IronPort-SDR: 6rWcyZ9jAcKSdtdbrDHDh/6nQsxrwvVMp4M4ZfoMe1Tn1caDPVWb9d+lvxjiJ/crms1keeCZRt MxgjaloC+QMw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.73,413,1583222400"; d="scan'208";a="289287605" Received: from npg-dpdk-cvl-jeffguo-01.sh.intel.com ([10.67.111.128]) by fmsmga004.fm.intel.com with ESMTP; 20 May 2020 02:26:02 -0700 From: Jeff Guo To: beilei.xing@intel.com, qi.z.zhang@intel.com, jianbo.liu@linaro.org, xiaoping.yan@nokia-sbell.com Cc: xiaolong.ye@intel.com, dev@dpdk.org, jia.guo@intel.com, olivier.matz@6wind.com Date: Wed, 20 May 2020 17:25:21 -0400 Message-Id: <20200520212521.34197-1-jia.guo@intel.com> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [dpdk-dev] net/i40e: fix error setting for L2TAG X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Base on HW, if a packet be 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: ca74903b75cf ("net/i40e: extract non-x86 specific code from vector driver") Signed-off-by: Jeff Guo --- drivers/net/i40e/i40e_rxtx_vec_common.h | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/net/i40e/i40e_rxtx_vec_common.h b/drivers/net/i40e/i40e_rxtx_vec_common.h index 0e6ffa007..31f73f605 100644 --- a/drivers/net/i40e/i40e_rxtx_vec_common.h +++ b/drivers/net/i40e/i40e_rxtx_vec_common.h @@ -33,6 +33,7 @@ reassemble_packets(struct i40e_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