From: "Zhang, Xiao" <xiao.zhang@intel.com>
To: Kevin Traynor <ktraynor@redhat.com>, "dev@dpdk.org" <dev@dpdk.org>
Cc: "Xing, Beilei" <beilei.xing@intel.com>,
"Zhang, Qi Z" <qi.z.zhang@intel.com>,
"stable@dpdk.org" <stable@dpdk.org>,
"Stokes, Ian" <ian.stokes@intel.com>
Subject: Re: [dpdk-stable] [dpdk-dev] net/i40e: fix vlan packets drop
Date: Tue, 15 Oct 2019 01:41:58 +0000 [thread overview]
Message-ID: <AF0377F445CB2540BB46FF359C1C1BBE011D98F6@SHSMSX105.ccr.corp.intel.com> (raw)
In-Reply-To: <fdf874b7-8c97-4973-67b8-58280987d754@redhat.com>
Hi Kevin,
> -----Original Message-----
> From: Kevin Traynor [mailto:ktraynor@redhat.com]
> Sent: Tuesday, October 15, 2019 1:42 AM
> To: Zhang, Xiao <xiao.zhang@intel.com>; dev@dpdk.org
> Cc: Xing, Beilei <beilei.xing@intel.com>; Zhang, Qi Z <qi.z.zhang@intel.com>;
> stable@dpdk.org; Stokes, Ian <ian.stokes@intel.com>
> Subject: Re: [dpdk-dev] net/i40e: fix vlan packets drop
>
> On 14/10/2019 08:53, Xiao Zhang wrote:
> > vlan packets with ip length bigger then 1496 will not be received by
> > i40e due to wrong packets size checking. This patch fixes the issue by
> > correcting the maximum frame size during checking.
> >
> > Fixes: 35b2d13fd6fd ("net: add rte prefix to ether defines")
>
> To make sure it is backported to the correct stable branches, please tag the
> commit that introduced the bug, not the last commit to touch the line.
Got it, the right fixline should be Fixes: 43e5488c0ac6 ("net/i40e: support MTU configuration"), will correct it.
>
> > Cc: stable@dpdk.org
> >
> > Signed-off-by: Xiao Zhang <xiao.zhang@intel.com>
> > ---
> > drivers/net/i40e/i40e_ethdev.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/net/i40e/i40e_ethdev.c
> > b/drivers/net/i40e/i40e_ethdev.c index 2ca14da..156d67b 100644
> > --- a/drivers/net/i40e/i40e_ethdev.c
> > +++ b/drivers/net/i40e/i40e_ethdev.c
>
> What about vf?
vf also need to be fixed, will add it.
>
> > @@ -12103,7 +12103,7 @@ i40e_dev_mtu_set(struct rte_eth_dev *dev,
> uint16_t mtu)
> > return -EBUSY;
> > }
> >
> > - if (frame_size > RTE_ETHER_MAX_LEN)
> > + if (frame_size > RTE_ETHER_MAX_LEN + I40E_VLAN_TAG_SIZE * 2)
> > dev_data->dev_conf.rxmode.offloads |=
> > DEV_RX_OFFLOAD_JUMBO_FRAME;
> > else
> >
>
> +cc Ian, who looked into MTU for i40e a while back.
>
> MTU code changing makes me nervous. You would need to look through
> everywhere there is something related to pkt len to check it is still ok.
>
> E.g. if I got it right (maybe I miss something), this means a 1500 mtu will set
> frame_size to 1526, which will turn off jumbo and set dev_data-
> >dev_conf.rxmode.max_rx_pkt_len = 1526
>
> Then in i40e_rx_queue_config()
>
> rxq->max_pkt_len = RTE_MIN(len, data->dev_conf.rxmode.max_rx_pkt_len);
> ^^^ lets say max_rx_pkt_len (1526) is the min
>
> if (data->dev_conf.rxmode.offloads & DEV_RX_OFFLOAD_JUMBO_FRAME) {
>
> [snip jumbo on branch]
>
> } else {
> if (rxq->max_pkt_len < RTE_ETHER_MIN_LEN ||
> rxq->max_pkt_len > RTE_ETHER_MAX_LEN) {
> ^^^ 1526 ^^^ 1518
>
> PMD_DRV_LOG(ERR, "maximum packet length must be "
> "larger than %u and smaller than %u, "
> "as jumbo frame is disabled",
> (uint32_t)RTE_ETHER_MIN_LEN,
> (uint32_t)RTE_ETHER_MAX_LEN);
> return I40E_ERR_CONFIG;
> ^^^ Error returned ???
> }
> }
Thanks for point out. Will go through the code to check if related pkt length still ok.
next prev parent reply other threads:[~2019-10-15 1:42 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-10-14 7:53 [dpdk-stable] " Xiao Zhang
2019-10-14 17:41 ` [dpdk-stable] [dpdk-dev] " Kevin Traynor
2019-10-15 1:41 ` Zhang, Xiao [this message]
2019-10-21 2:44 ` [dpdk-stable] [v2] " Xiao Zhang
2019-10-21 20:15 ` Kevin Traynor
2019-10-29 5:12 ` [dpdk-stable] [v3] " Xiao Zhang
2019-11-08 19:28 ` Kevin Traynor
2019-11-08 19:49 ` Thomas Monjalon
2019-11-09 3:01 ` Zhang, Qi Z
2020-02-10 13:48 ` [dpdk-stable] [dpdk-dev] " Mattias Rönnblom
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=AF0377F445CB2540BB46FF359C1C1BBE011D98F6@SHSMSX105.ccr.corp.intel.com \
--to=xiao.zhang@intel.com \
--cc=beilei.xing@intel.com \
--cc=dev@dpdk.org \
--cc=ian.stokes@intel.com \
--cc=ktraynor@redhat.com \
--cc=qi.z.zhang@intel.com \
--cc=stable@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).