patches for DPDK stable branches
 help / color / mirror / Atom feed
* [dpdk-stable] patch 'net/i40e: fix dropping packets with ethertype 0x88A8' has been queued to stable release 16.07.1
@ 2016-10-12  6:44 Yuanhan Liu
  0 siblings, 0 replies; only message in thread
From: Yuanhan Liu @ 2016-10-12  6:44 UTC (permalink / raw)
  To: Beilei Xing; +Cc: dpdk stable, Jingjing Wu

Hi,

FYI, your patch has been queued to stable release 16.07.1

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable
yet. It will be pushed if I get no objections before this Friday.
So please shutout if anyone has objections.

Thanks.

	--yliu

---
>From 5ca2dfaf4bb7a95255020c12c3e189681a01a301 Mon Sep 17 00:00:00 2001
From: Beilei Xing <beilei.xing@intel.com>
Date: Wed, 17 Aug 2016 09:58:06 +0800
Subject: [PATCH] net/i40e: fix dropping packets with ethertype 0x88A8

[ upstream commit 4d61120d5ce750ec5a3b3625cb45ad7c3a915d9e ]

In FW default settings, Ethertype 0x88A8 is treated as S-TAG,
and packets with S-TAG should be received in Port Virtualizer mode.
However, Port Virtualizer mode is not initialized in DPDK, so X710 will
drop packets with Ethertype 0x88A8.
This patch fixes this issue by turning off S-TAG identification.

Fixes: 4861cde46116 ("i40e: new poll mode driver")

Signed-off-by: Beilei Xing <beilei.xing@intel.com>
Acked-by: Jingjing Wu <jingjing.wu@intel.com>
---
 drivers/net/i40e/i40e_ethdev.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c
index d0aeb70..55c4887 100644
--- a/drivers/net/i40e/i40e_ethdev.c
+++ b/drivers/net/i40e/i40e_ethdev.c
@@ -932,6 +932,9 @@ config_floating_veb(struct rte_eth_dev *dev)
 	}
 }
 
+#define I40E_L2_TAGS_S_TAG_SHIFT 1
+#define I40E_L2_TAGS_S_TAG_MASK I40E_MASK(0x1, I40E_L2_TAGS_S_TAG_SHIFT)
+
 static int
 eth_i40e_dev_init(struct rte_eth_dev *dev)
 {
@@ -1120,6 +1123,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);
+	}
+
 	if (!vsi->max_macaddrs)
 		len = ETHER_ADDR_LEN;
 	else
-- 
1.9.0

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2016-10-12  6:44 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-10-12  6:44 [dpdk-stable] patch 'net/i40e: fix dropping packets with ethertype 0x88A8' has been queued to stable release 16.07.1 Yuanhan Liu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).