Message ID | 20201209031628.29572-1-stevex.yang@intel.com (mailing list archive) |
---|---|
Headers |
Return-Path: <dev-bounces@dpdk.org> X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 221DAA09E9; Wed, 9 Dec 2020 04:19:19 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 5A110BE73; Wed, 9 Dec 2020 04:19:17 +0100 (CET) Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by dpdk.org (Postfix) with ESMTP id EC0C972D9 for <dev@dpdk.org>; Wed, 9 Dec 2020 04:19:14 +0100 (CET) IronPort-SDR: phAfacJTKGcWMsPRtQZE0UOd9aw2aTMvX6NOntSrwDfVFSuI2micMhSfJ58hs9+r8HcekntmBM xx9gZy6RYZCQ== X-IronPort-AV: E=McAfee;i="6000,8403,9829"; a="161061832" X-IronPort-AV: E=Sophos;i="5.78,404,1599548400"; d="scan'208";a="161061832" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Dec 2020 19:19:13 -0800 IronPort-SDR: D3i6Xu9tunu/nz5iJSW2NKQ8PbpKoV4hzSf+OGunI3qmomWMn2QclyoqGTISszwbIbCxnUKmJ+ qrBENFp6WcHQ== X-IronPort-AV: E=Sophos;i="5.78,404,1599548400"; d="scan'208";a="363948465" Received: from intel-npg-odc-srv01.cd.intel.com ([10.240.178.136]) by orsmga008-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Dec 2020 19:19:00 -0800 From: Steve Yang <stevex.yang@intel.com> To: dev@dpdk.org Cc: hemant.agrawal@nxp.com, sachin.saxena@oss.nxp.com, jia.guo@intel.com, haiyue.wang@intel.com, xavier.huwei@huawei.com, humin29@huawei.com, yisen.zhuang@huawei.com, oulijun@huawei.com, beilei.xing@intel.com, jingjing.wu@intel.com, qiming.yang@intel.com, qi.z.zhang@intel.com, rosen.xu@intel.com, hkalra@marvell.com, jerinj@marvell.com, ndabilpuram@marvell.com, kirankumark@marvell.com, rmody@marvell.com, shshaikh@marvell.com, andrew.rybchenko@oktetlabs.ru, mczekaj@marvell.com, wei.dai@intel.com, fengchunsong@huawei.com, lihuisong@huawei.com, ferruh.yigit@intel.com, chenhao164@huawei.com, helin.zhang@intel.com, konstantin.ananyev@intel.com, yanglong.wu@intel.com, xiaolong.ye@intel.com, ting.xu@intel.com, xiaoyun.li@intel.com, wenzhuo.lu@intel.com, andy.pei@intel.com, dan.wei@intel.com, skori@marvell.com, vattunuru@marvell.com, sony.chacko@qlogic.com, bruce.richardson@intel.com, ivan.malov@oktetlabs.ru, zyta.szpak@semihalf.com, slawomir.rosek@semihalf.com, rad@semihalf.com, Steve Yang <stevex.yang@intel.com> Date: Wed, 9 Dec 2020 03:16:16 +0000 Message-Id: <20201209031628.29572-1-stevex.yang@intel.com> X-Mailer: git-send-email 2.17.1 Subject: [dpdk-dev] [PATCH v1 00/12] fix rx packets dropped issue X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions <dev.dpdk.org> List-Unsubscribe: <https://mails.dpdk.org/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://mails.dpdk.org/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <https://mails.dpdk.org/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> Errors-To: dev-bounces@dpdk.org Sender: "dev" <dev-bounces@dpdk.org> |
Series |
fix rx packets dropped issue
|
|
Message
Steve Yang
Dec. 9, 2020, 3:16 a.m. UTC
The jumbo frame used the 'RTE_ETHER_MAX_LEN' as boundary condition, this fix will change the boundary condition with 'RTE_ETHER_MTU'. When the MTU(1500) set, the frame type of rx packet will be different if used different overhead, it will cause the consistency issue, and the normal packet will be dropped. Hence, using fixed value 'RTE_ETHER_MTU' can avoid this issue. Following scopes will be changed: - 'rte_ethdev' - 'app', e.g.: 'test-pmd'; - net PMDs which support VLAN tag(s) within overhead, e.g.: i40e; Steve Yang (12): net/dpaa2: fix the jumbo frame flag condition for mtu set net/e1000: fix the jumbo frame flag condition for mtu set net/hns3: fix the jumbo frame flag condition for mtu set net/i40e: fix the jumbo frame flag condition net/iavf: fix the jumbo frame flag condition net/ice: fix the jumbo frame flag condition net/ipn3ke: fix the jumbo frame flag condition for mtu set net/octeontx: fix the jumbo frame flag condition for mtu set net/octeontx2: fix the jumbo frame flag condition for mtu net/qede: fix the jumbo frame flag condition for mtu set net/sfc: fix the jumbo frame flag condition for mtu set net/thunderx: fix the jumbo frame flag condition for mtu set drivers/net/dpaa2/dpaa2_ethdev.c | 2 +- drivers/net/e1000/em_ethdev.c | 2 +- drivers/net/e1000/igb_ethdev.c | 2 +- drivers/net/hns3/hns3_ethdev.c | 2 +- drivers/net/hns3/hns3_ethdev_vf.c | 2 +- drivers/net/i40e/i40e_ethdev.c | 2 +- drivers/net/i40e/i40e_ethdev.h | 1 + drivers/net/i40e/i40e_ethdev_vf.c | 10 +++++----- drivers/net/i40e/i40e_fdir.c | 2 +- drivers/net/i40e/i40e_rxtx.c | 8 ++++---- drivers/net/iavf/iavf.h | 1 + drivers/net/iavf/iavf_ethdev.c | 10 +++++----- drivers/net/ice/ice_dcf_ethdev.c | 8 ++++---- drivers/net/ice/ice_ethdev.c | 2 +- drivers/net/ice/ice_ethdev.h | 1 + drivers/net/ice/ice_rxtx.c | 10 +++++----- drivers/net/ipn3ke/ipn3ke_representor.c | 2 +- drivers/net/octeontx/octeontx_ethdev.c | 2 +- drivers/net/octeontx2/otx2_ethdev_ops.c | 2 +- drivers/net/qede/qede_ethdev.c | 2 +- drivers/net/sfc/sfc_ethdev.c | 2 +- drivers/net/thunderx/nicvf_ethdev.c | 2 +- 22 files changed, 40 insertions(+), 37 deletions(-)
Comments
Hi, steve What I saw is that you replace of frame size checking to mtu checking, but you still use "18" as overhead number to configure max_rx_pkt_len? uint32_t frame_size = mtu + RTE_ETHER_HDR_LEN + RTE_ETHER_CRC_LEN; dev->data->dev_conf.rxmode.max_rx_pkt_len = frame_size; > -----Original Message----- > From: Steve Yang <stevex.yang@intel.com> > Sent: Wednesday, December 9, 2020 11:16 AM > To: dev@dpdk.org > Cc: hemant.agrawal@nxp.com; sachin.saxena@oss.nxp.com; Guo, Jia > <jia.guo@intel.com>; Wang, Haiyue <haiyue.wang@intel.com>; > xavier.huwei@huawei.com; humin29@huawei.com; > yisen.zhuang@huawei.com; oulijun@huawei.com; Xing, Beilei > <beilei.xing@intel.com>; Wu, Jingjing <jingjing.wu@intel.com>; Yang, Qiming > <qiming.yang@intel.com>; Zhang, Qi Z <qi.z.zhang@intel.com>; Xu, Rosen > <rosen.xu@intel.com>; hkalra@marvell.com; jerinj@marvell.com; > ndabilpuram@marvell.com; kirankumark@marvell.com; > rmody@marvell.com; shshaikh@marvell.com; > andrew.rybchenko@oktetlabs.ru; mczekaj@marvell.com; wei.dai@intel.com; > fengchunsong@huawei.com; lihuisong@huawei.com; Yigit, Ferruh > <ferruh.yigit@intel.com>; chenhao164@huawei.com; Zhang, Helin > <helin.zhang@intel.com>; Ananyev, Konstantin > <konstantin.ananyev@intel.com>; yanglong.wu@intel.com; > xiaolong.ye@intel.com; Xu, Ting <ting.xu@intel.com>; Li, Xiaoyun > <xiaoyun.li@intel.com>; Lu, Wenzhuo <wenzhuo.lu@intel.com>; Pei, Andy > <andy.pei@intel.com>; Wei, Dan <dan.wei@intel.com>; skori@marvell.com; > vattunuru@marvell.com; sony.chacko@qlogic.com; Richardson, Bruce > <bruce.richardson@intel.com>; ivan.malov@oktetlabs.ru; > zyta.szpak@semihalf.com; slawomir.rosek@semihalf.com; > rad@semihalf.com; Yang, SteveX <stevex.yang@intel.com> > Subject: [PATCH v1 00/12] fix rx packets dropped issue > > The jumbo frame used the 'RTE_ETHER_MAX_LEN' as boundary condition, > this fix will change the boundary condition with 'RTE_ETHER_MTU'. > > When the MTU(1500) set, the frame type of rx packet will be different if > used different overhead, it will cause the consistency issue, and the normal > packet will be dropped. Hence, using fixed value 'RTE_ETHER_MTU' > can avoid this issue. > > Following scopes will be changed: > - 'rte_ethdev' > - 'app', e.g.: 'test-pmd'; > - net PMDs which support VLAN tag(s) within overhead, e.g.: i40e; > > Steve Yang (12): > net/dpaa2: fix the jumbo frame flag condition for mtu set > net/e1000: fix the jumbo frame flag condition for mtu set > net/hns3: fix the jumbo frame flag condition for mtu set > net/i40e: fix the jumbo frame flag condition > net/iavf: fix the jumbo frame flag condition > net/ice: fix the jumbo frame flag condition > net/ipn3ke: fix the jumbo frame flag condition for mtu set > net/octeontx: fix the jumbo frame flag condition for mtu set > net/octeontx2: fix the jumbo frame flag condition for mtu > net/qede: fix the jumbo frame flag condition for mtu set > net/sfc: fix the jumbo frame flag condition for mtu set > net/thunderx: fix the jumbo frame flag condition for mtu set > > drivers/net/dpaa2/dpaa2_ethdev.c | 2 +- > drivers/net/e1000/em_ethdev.c | 2 +- > drivers/net/e1000/igb_ethdev.c | 2 +- > drivers/net/hns3/hns3_ethdev.c | 2 +- > drivers/net/hns3/hns3_ethdev_vf.c | 2 +- > drivers/net/i40e/i40e_ethdev.c | 2 +- > drivers/net/i40e/i40e_ethdev.h | 1 + > drivers/net/i40e/i40e_ethdev_vf.c | 10 +++++----- > drivers/net/i40e/i40e_fdir.c | 2 +- > drivers/net/i40e/i40e_rxtx.c | 8 ++++---- > drivers/net/iavf/iavf.h | 1 + > drivers/net/iavf/iavf_ethdev.c | 10 +++++----- > drivers/net/ice/ice_dcf_ethdev.c | 8 ++++---- > drivers/net/ice/ice_ethdev.c | 2 +- > drivers/net/ice/ice_ethdev.h | 1 + > drivers/net/ice/ice_rxtx.c | 10 +++++----- > drivers/net/ipn3ke/ipn3ke_representor.c | 2 +- > drivers/net/octeontx/octeontx_ethdev.c | 2 +- > drivers/net/octeontx2/otx2_ethdev_ops.c | 2 +- > drivers/net/qede/qede_ethdev.c | 2 +- > drivers/net/sfc/sfc_ethdev.c | 2 +- > drivers/net/thunderx/nicvf_ethdev.c | 2 +- > 22 files changed, 40 insertions(+), 37 deletions(-) > > -- > 2.17.1
On 12/9/2020 3:16 AM, Steve Yang wrote: > The jumbo frame used the 'RTE_ETHER_MAX_LEN' as boundary condition, this > fix will change the boundary condition with 'RTE_ETHER_MTU'. > > When the MTU(1500) set, the frame type of rx packet will be different > if used different overhead, it will cause the consistency issue, and the > normal packet will be dropped. Hence, using fixed value 'RTE_ETHER_MTU' > can avoid this issue. > > Following scopes will be changed: > - 'rte_ethdev' > - 'app', e.g.: 'test-pmd'; > - net PMDs which support VLAN tag(s) within overhead, e.g.: i40e; > > Steve Yang (12): > net/dpaa2: fix the jumbo frame flag condition for mtu set > net/e1000: fix the jumbo frame flag condition for mtu set > net/hns3: fix the jumbo frame flag condition for mtu set > net/i40e: fix the jumbo frame flag condition > net/iavf: fix the jumbo frame flag condition > net/ice: fix the jumbo frame flag condition > net/ipn3ke: fix the jumbo frame flag condition for mtu set > net/octeontx: fix the jumbo frame flag condition for mtu set > net/octeontx2: fix the jumbo frame flag condition for mtu > net/qede: fix the jumbo frame flag condition for mtu set > net/sfc: fix the jumbo frame flag condition for mtu set > net/thunderx: fix the jumbo frame flag condition for mtu set > Overall looks good to me, there is no review from the individual drivers, but if there is no objection I am for merging it soon. A few things below: 1) I see following usage not updated, can you please include them in next version: ixgbe_set_vf_lpe ixgbe_dev_mtu_set cxgbe_dev_mtu_set cxgbe_dev_rx_queue_setup axgb_mtu_set enetc_mtu_set hinic_dev_set_mtu dpaa_mtu_set nfp_net_dev_mtu_set lio_dev_mtu_set 2) I guess 'eth_dev' update will come as separate patch, can you please send it without waiting this set to be merged, since both are related having them both can help discussions. Thanks, ferruh