patches for DPDK stable branches
 help / color / mirror / Atom feed
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.

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