DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH RESEND v2] net/i40e: fix floating VEB issue
@ 2016-11-04  9:33 Yuanhan Liu
  2016-11-04 11:01 ` Yuanhan Liu
  0 siblings, 1 reply; 4+ messages in thread
From: Yuanhan Liu @ 2016-11-04  9:33 UTC (permalink / raw)
  To: dev; +Cc: Beilei Xing

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 <beilei.xing@intel.com>
Acked-by: Jingjing Wu <jingjing.wu@intel.com>
---
 v2 changes:
 * Modify the limitation description in i40e.rst

 Seems that Beilei failed to send this patches out; while I have sent out few
 patches out successfully. I'm sending it for her.

 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 <dev> autoneg on`` should be
 set first and then the link can be brought up through ``ifconfig <dev> 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 bb81b15..631a93f 100644
--- a/drivers/net/i40e/i40e_ethdev.c
+++ b/drivers/net/i40e/i40e_ethdev.c
@@ -1121,11 +1121,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)
-- 
2.5.0

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [dpdk-dev] [PATCH RESEND v2] net/i40e: fix floating VEB issue
  2016-11-04  9:33 [dpdk-dev] [PATCH RESEND v2] net/i40e: fix floating VEB issue Yuanhan Liu
@ 2016-11-04 11:01 ` Yuanhan Liu
  2016-11-04 11:08   ` Yuanhan Liu
  0 siblings, 1 reply; 4+ messages in thread
From: Yuanhan Liu @ 2016-11-04 11:01 UTC (permalink / raw)
  To: dev; +Cc: Beilei Xing

On Fri, Nov 04, 2016 at 05:33:20PM +0800, Yuanhan Liu wrote:
> 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 <beilei.xing@intel.com>
> Acked-by: Jingjing Wu <jingjing.wu@intel.com>
> ---
>  v2 changes:
>  * Modify the limitation description in i40e.rst
> 
>  Seems that Beilei failed to send this patches out; while I have sent out few
>  patches out successfully. I'm sending it for her.

Please ignore this patch. The original patch is with wrong format, that
it turns the authorship to me. I will resend another one soon.

	--yliu

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [dpdk-dev] [PATCH RESEND v2] net/i40e: fix floating VEB issue
  2016-11-04 11:01 ` Yuanhan Liu
@ 2016-11-04 11:08   ` Yuanhan Liu
  2016-11-07 16:41     ` Thomas Monjalon
  0 siblings, 1 reply; 4+ messages in thread
From: Yuanhan Liu @ 2016-11-04 11:08 UTC (permalink / raw)
  To: dev; +Cc: Jingjing Wu, Yu Liu, Beilei Xing

From: Beilei Xing <beilei.xing@intel.com>

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 <beilei.xing@intel.com>
Acked-by: Jingjing Wu <jingjing.wu@intel.com>
---
 v2 changes:
 * Modify the limitation description in i40e.rst

 :: Seems that Beilei failed to send this patches out. While I have sent out few
 :: patches out successfully, I'm sending it for her.

 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 <dev> autoneg on`` should be
 set first and then the link can be brought up through ``ifconfig <dev> 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 bb81b15..631a93f 100644
--- a/drivers/net/i40e/i40e_ethdev.c
+++ b/drivers/net/i40e/i40e_ethdev.c
@@ -1121,11 +1121,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)
-- 
2.5.0

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [dpdk-dev] [PATCH RESEND v2] net/i40e: fix floating VEB issue
  2016-11-04 11:08   ` Yuanhan Liu
@ 2016-11-07 16:41     ` Thomas Monjalon
  0 siblings, 0 replies; 4+ messages in thread
From: Thomas Monjalon @ 2016-11-07 16:41 UTC (permalink / raw)
  To: Beilei Xing; +Cc: dev, Yuanhan Liu, Jingjing Wu, Yu Liu

2016-11-04 19:08, Yuanhan Liu:
> From: Beilei Xing <beilei.xing@intel.com>
> 
> 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 <beilei.xing@intel.com>
> Acked-by: Jingjing Wu <jingjing.wu@intel.com>

Applied, thanks

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2016-11-07 16:41 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-11-04  9:33 [dpdk-dev] [PATCH RESEND v2] net/i40e: fix floating VEB issue Yuanhan Liu
2016-11-04 11:01 ` Yuanhan Liu
2016-11-04 11:08   ` Yuanhan Liu
2016-11-07 16:41     ` Thomas Monjalon

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).