Message ID | 1441003305-24055-1-git-send-email-vladz@cloudius-systems.com (mailing list archive) |
---|---|
State | Changes Requested, archived |
Headers |
Return-Path: <dev-bounces@dpdk.org> X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [IPv6:::1]) by dpdk.org (Postfix) with ESMTP id E87B38F9C; Mon, 31 Aug 2015 08:41:50 +0200 (CEST) Received: from mail-wi0-f181.google.com (mail-wi0-f181.google.com [209.85.212.181]) by dpdk.org (Postfix) with ESMTP id 8B2DD8F9B for <dev@dpdk.org>; Mon, 31 Aug 2015 08:41:49 +0200 (CEST) Received: by widfa3 with SMTP id fa3so13410770wid.1 for <dev@dpdk.org>; Sun, 30 Aug 2015 23:41:49 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=Ac/dYgX0W9fcwoJUqi21gfGyrsGcBOnM193or42mPu0=; b=C9smUQDMymetZxtq6Yrs/QZmKKXM8SWUnEhb5sk7mcUGuEyu8eFMUNXwzh3cMLCOHM kqbi1/wJw2YDXpZP7tD4mlD+MDhlyLRBjv9lI8hoXKgshbYPVh4uMWUOb6ujQtl1WbbL PmMFsp+qAH1Swu9gJzzjSBGUbybv61D+pBN1Pqq77p5I3MCrULaikp2VBmbWGp4Mfyso NM4jFTcI1EhjDrc92V0yRsBH7m4hiN7Gyl7/nQ7tDPPT+8BU4JnOtFKezbPocUdn6eKF WEX8QHMXRJspyKawVzAwln27UVdx68O4dUrWJQ8bTJZ3v26QlSZpOTtk9ztyAfaZ852/ 1O0Q== X-Gm-Message-State: ALoCoQlwRg1TvIJpuhP7J6JUcENPhcqugvWcWlI96eyYua2IjfLwWJWtVLugZtOsTyNJ5mD799U5 X-Received: by 10.180.96.230 with SMTP id dv6mr18124837wib.23.1441003309364; Sun, 30 Aug 2015 23:41:49 -0700 (PDT) Received: from vladz-laptop.localdomain (bzq-79-180-224-237.red.bezeqint.net. [79.180.224.237]) by smtp.gmail.com with ESMTPSA id s7sm16371150wix.23.2015.08.30.23.41.47 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 30 Aug 2015 23:41:48 -0700 (PDT) From: Vlad Zolotarov <vladz@cloudius-systems.com> To: dev@dpdk.org Date: Mon, 31 Aug 2015 09:41:45 +0300 Message-Id: <1441003305-24055-1-git-send-email-vladz@cloudius-systems.com> X-Mailer: git-send-email 2.1.0 Subject: [dpdk-dev] [PATCH v1] net: i40e: add VLAN tag size to RXMAX X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK <dev.dpdk.org> List-Unsubscribe: <http://dpdk.org/ml/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://dpdk.org/ml/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <http://dpdk.org/ml/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> Errors-To: dev-bounces@dpdk.org Sender: "dev" <dev-bounces@dpdk.org> |
Commit Message
Vladislav Zolotarov
Aug. 31, 2015, 6:41 a.m. UTC
HW requires it regardless the presence of the VLAN tag in the received frame.
Otherwise Rx frames are being filtered out on the MTU-4 boundary.
Signed-off-by: Vlad Zolotarov <vladz@cloudius-systems.com>
---
drivers/net/i40e/i40e_rxtx.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Comments
> -----Original Message----- > From: Vlad Zolotarov [mailto:vladz@cloudius-systems.com] > Sent: Monday, August 31, 2015 2:42 PM > To: dev@dpdk.org > Cc: Zhang, Helin; Ananyev, Konstantin; avi@cloudius-systems.com; Vlad > Zolotarov > Subject: [dpdk-dev] [PATCH v1] net: i40e: add VLAN tag size to RXMAX > > HW requires it regardless the presence of the VLAN tag in the received frame. > Otherwise Rx frames are being filtered out on the MTU-4 boundary. Maximum packet length could have different meanings from MTU. I agree with you to have it be regardless of vlan tag length. > > Signed-off-by: Vlad Zolotarov <vladz@cloudius-systems.com> > --- > drivers/net/i40e/i40e_rxtx.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/net/i40e/i40e_rxtx.c b/drivers/net/i40e/i40e_rxtx.c index > eae4ab0..22aaeb1 100644 > --- a/drivers/net/i40e/i40e_rxtx.c > +++ b/drivers/net/i40e/i40e_rxtx.c > @@ -3156,7 +3156,7 @@ i40e_rx_queue_init(struct i40e_rx_queue *rxq) > rx_ctx.hsplit_0 = I40E_HEADER_SPLIT_ALL; > else > rx_ctx.hsplit_0 = I40E_HEADER_SPLIT_NONE; > - rx_ctx.rxmax = rxq->max_pkt_len; > + rx_ctx.rxmax = rxq->max_pkt_len + I40E_VLAN_TAG_SIZE; It needs to take into account the double vlan case, and also VF case. It seems it needs more code changes. Thank you for the contribution! Regards, Helin > rx_ctx.tphrdesc_ena = 1; > rx_ctx.tphwdesc_ena = 1; > rx_ctx.tphdata_ena = 1; > -- > 2.1.0
Hello, On 09/ 1/15 07:34 AM, Zhang, Helin wrote: >> -----Original Message----- >> From: Vlad Zolotarov [mailto:vladz@cloudius-systems.com] >> Sent: Monday, August 31, 2015 2:42 PM >> To: dev@dpdk.org >> Cc: Zhang, Helin; Ananyev, Konstantin; avi@cloudius-systems.com; Vlad >> Zolotarov >> Subject: [dpdk-dev] [PATCH v1] net: i40e: add VLAN tag size to RXMAX >> >> HW requires it regardless the presence of the VLAN tag in the received frame. >> Otherwise Rx frames are being filtered out on the MTU-4 boundary. > Maximum packet length could have different meanings from MTU. I agree with > you to have it be regardless of vlan tag length. > >> Signed-off-by: Vlad Zolotarov <vladz@cloudius-systems.com> >> --- >> drivers/net/i40e/i40e_rxtx.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/drivers/net/i40e/i40e_rxtx.c b/drivers/net/i40e/i40e_rxtx.c index >> eae4ab0..22aaeb1 100644 >> --- a/drivers/net/i40e/i40e_rxtx.c >> +++ b/drivers/net/i40e/i40e_rxtx.c >> @@ -3156,7 +3156,7 @@ i40e_rx_queue_init(struct i40e_rx_queue *rxq) >> rx_ctx.hsplit_0 = I40E_HEADER_SPLIT_ALL; >> else >> rx_ctx.hsplit_0 = I40E_HEADER_SPLIT_NONE; >> - rx_ctx.rxmax = rxq->max_pkt_len; >> + rx_ctx.rxmax = rxq->max_pkt_len + I40E_VLAN_TAG_SIZE; > It needs to take into account the double vlan case, and also VF case. > It seems it needs more code changes. Thank you for the contribution! I was wondering if this "bug" haven't been forgotten ? Even if it his not patched yet maybe it is worth an entry in the documentation ? > > Regards, > Helin > >> rx_ctx.tphrdesc_ena = 1; >> rx_ctx.tphwdesc_ena = 1; >> rx_ctx.tphdata_ena = 1; >> -- >> 2.1.0
Hi, Nikita dev_conf.rxmode.max_rx_pkt_len is different with MTU concept. The max_rx_pkt_len indicates the maximum packet length it can receive, it should be larger than MTU. There is another patch which is enabling set_mtu ops. http://dpdk.org/dev/patchwork/patch/12218/ You can definitely help to review and comment it. Thanks Jingjing > -----Original Message----- > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Nikita Kozlov > Sent: Friday, May 06, 2016 11:51 PM > To: Zhang, Helin > Cc: dev@dpdk.org > Subject: Re: [dpdk-dev] [PATCH v1] net: i40e: add VLAN tag size to RXMAX > > Hello, > > On 09/ 1/15 07:34 AM, Zhang, Helin wrote: > >> -----Original Message----- > >> From: Vlad Zolotarov [mailto:vladz@cloudius-systems.com] > >> Sent: Monday, August 31, 2015 2:42 PM > >> To: dev@dpdk.org > >> Cc: Zhang, Helin; Ananyev, Konstantin; avi@cloudius-systems.com; Vlad > >> Zolotarov > >> Subject: [dpdk-dev] [PATCH v1] net: i40e: add VLAN tag size to RXMAX > >> > >> HW requires it regardless the presence of the VLAN tag in the received > frame. > >> Otherwise Rx frames are being filtered out on the MTU-4 boundary. > > Maximum packet length could have different meanings from MTU. I agree > > with you to have it be regardless of vlan tag length. > > > >> Signed-off-by: Vlad Zolotarov <vladz@cloudius-systems.com> > >> --- > >> drivers/net/i40e/i40e_rxtx.c | 2 +- > >> 1 file changed, 1 insertion(+), 1 deletion(-) > >> > >> diff --git a/drivers/net/i40e/i40e_rxtx.c > >> b/drivers/net/i40e/i40e_rxtx.c index > >> eae4ab0..22aaeb1 100644 > >> --- a/drivers/net/i40e/i40e_rxtx.c > >> +++ b/drivers/net/i40e/i40e_rxtx.c > >> @@ -3156,7 +3156,7 @@ i40e_rx_queue_init(struct i40e_rx_queue *rxq) > >> rx_ctx.hsplit_0 = I40E_HEADER_SPLIT_ALL; > >> else > >> rx_ctx.hsplit_0 = I40E_HEADER_SPLIT_NONE; > >> - rx_ctx.rxmax = rxq->max_pkt_len; > >> + rx_ctx.rxmax = rxq->max_pkt_len + I40E_VLAN_TAG_SIZE; > > It needs to take into account the double vlan case, and also VF case. > > It seems it needs more code changes. Thank you for the contribution! > I was wondering if this "bug" haven't been forgotten ? Even if it his not > patched yet maybe it is worth an entry in the documentation ? > > > > Regards, > > Helin > > > >> rx_ctx.tphrdesc_ena = 1; > >> rx_ctx.tphwdesc_ena = 1; > >> rx_ctx.tphdata_ena = 1; > >> -- > >> 2.1.0
diff --git a/drivers/net/i40e/i40e_rxtx.c b/drivers/net/i40e/i40e_rxtx.c index eae4ab0..22aaeb1 100644 --- a/drivers/net/i40e/i40e_rxtx.c +++ b/drivers/net/i40e/i40e_rxtx.c @@ -3156,7 +3156,7 @@ i40e_rx_queue_init(struct i40e_rx_queue *rxq) rx_ctx.hsplit_0 = I40E_HEADER_SPLIT_ALL; else rx_ctx.hsplit_0 = I40E_HEADER_SPLIT_NONE; - rx_ctx.rxmax = rxq->max_pkt_len; + rx_ctx.rxmax = rxq->max_pkt_len + I40E_VLAN_TAG_SIZE; rx_ctx.tphrdesc_ena = 1; rx_ctx.tphwdesc_ena = 1; rx_ctx.tphdata_ena = 1;