From: Yuanhan Liu <yuanhan.liu@linux.intel.com>
To: dev@dpdk.org
Cc: Beilei Xing <beilei.xing@intel.com>
Subject: [dpdk-dev] [PATCH RESEND v2] net/i40e: fix floating VEB issue
Date: Fri, 4 Nov 2016 17:33:20 +0800 [thread overview]
Message-ID: <1478252000-11455-1-git-send-email-yuanhan.liu@linux.intel.com> (raw)
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
next reply other threads:[~2016-11-04 9:32 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-11-04 9:33 Yuanhan Liu [this message]
2016-11-04 11:01 ` Yuanhan Liu
2016-11-04 11:08 ` Yuanhan Liu
2016-11-07 16:41 ` Thomas Monjalon
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1478252000-11455-1-git-send-email-yuanhan.liu@linux.intel.com \
--to=yuanhan.liu@linux.intel.com \
--cc=beilei.xing@intel.com \
--cc=dev@dpdk.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).