From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by dpdk.org (Postfix) with ESMTP id ACBA65597 for ; Wed, 16 Nov 2016 15:40:21 +0100 (CET) Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by orsmga102.jf.intel.com with ESMTP; 16 Nov 2016 06:40:20 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.31,500,1473145200"; d="scan'208";a="32024227" Received: from yliu-dev.sh.intel.com ([10.239.67.162]) by fmsmga005.fm.intel.com with ESMTP; 16 Nov 2016 06:40:19 -0800 From: Yuanhan Liu To: Beilei Xing Cc: Yuanhan Liu , Jingjing Wu , dpdk stable Date: Wed, 16 Nov 2016 22:41:10 +0800 Message-Id: <1479307270-15260-2-git-send-email-yuanhan.liu@linux.intel.com> X-Mailer: git-send-email 1.9.0 In-Reply-To: <1479307270-15260-1-git-send-email-yuanhan.liu@linux.intel.com> References: <1479307270-15260-1-git-send-email-yuanhan.liu@linux.intel.com> Subject: [dpdk-stable] patch 'net/i40e: fix floating VEB' has been queued to stable release 16.07.2 X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches for stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 16 Nov 2016 14:40:22 -0000 Hi, FYI, your patch has been queued to stable release 16.07.2 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 11/19/16. So please shout if anyone has objections. Thanks. --yliu --- >>From 1da8d590b82c5c6b5e46a0f3a6961eb977327897 Mon Sep 17 00:00:00 2001 From: Beilei Xing Date: Fri, 4 Nov 2016 19:08:08 +0800 Subject: [PATCH] net/i40e: fix floating VEB [ upstream commit ab881094004a44dbdac45931df1f985fc897f64e ] Turning off S-TAG identification will impact floating VEB, VFs can't communicate with each other. This patch fixes this issue by judging whether floating VEB is enabled, S-TAG identification will be turned off only when floating VEB is disabled. Fixes: 4d61120d5ce7 ("net/i40e: fix dropping packets with ethertype 0x88A8") Signed-off-by: Beilei Xing Acked-by: Jingjing Wu --- doc/guides/nics/i40e.rst | 6 ++++++ drivers/net/i40e/i40e_ethdev.c | 12 +++++++----- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/doc/guides/nics/i40e.rst b/doc/guides/nics/i40e.rst index c0163fc..5780268 100644 --- a/doc/guides/nics/i40e.rst +++ b/doc/guides/nics/i40e.rst @@ -453,3 +453,9 @@ To work around this issue, ``ethtool -s autoneg on`` should be set first and then the link can be brought up through ``ifconfig up``. NOTE: requires Linux kernel i40e driver version >= 1.4.X + +Receive packets with Ethertype 0x88A8 +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Due to the FW limitation, PF can receive packets with Ethertype 0x88A8 +only when floating VEB is disabled. diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c index 0a8f55d..f8ffe1f 100644 --- a/drivers/net/i40e/i40e_ethdev.c +++ b/drivers/net/i40e/i40e_ethdev.c @@ -1134,11 +1134,13 @@ eth_i40e_dev_init(struct rte_eth_dev *dev) /* Disable double vlan by default */ i40e_vsi_config_double_vlan(vsi, FALSE); - /* Disable S-TAG identification by default */ - ret = I40E_READ_REG(hw, I40E_PRT_L2TAGSEN); - if (ret & I40E_L2_TAGS_S_TAG_MASK) { - ret &= ~I40E_L2_TAGS_S_TAG_MASK; - I40E_WRITE_REG(hw, I40E_PRT_L2TAGSEN, ret); + /* Disable S-TAG identification when floating_veb is disabled */ + if (!pf->floating_veb) { + ret = I40E_READ_REG(hw, I40E_PRT_L2TAGSEN); + if (ret & I40E_L2_TAGS_S_TAG_MASK) { + ret &= ~I40E_L2_TAGS_S_TAG_MASK; + I40E_WRITE_REG(hw, I40E_PRT_L2TAGSEN, ret); + } } if (!vsi->max_macaddrs) -- 1.9.0