From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id C59F8A09E9; Wed, 9 Dec 2020 04:20:15 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 70A4EC99C; Wed, 9 Dec 2020 04:19:54 +0100 (CET) Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by dpdk.org (Postfix) with ESMTP id C352BC996 for ; Wed, 9 Dec 2020 04:19:49 +0100 (CET) IronPort-SDR: EZ3EkaUGKp4Qp+dQ/UbomAgmILwI8kB4usiRgG3W+adiCCmW8OP8KZowXygZiG56G9eNvakO9k OGf0rKIpsx+A== X-IronPort-AV: E=McAfee;i="6000,8403,9829"; a="170500909" X-IronPort-AV: E=Sophos;i="5.78,404,1599548400"; d="scan'208";a="170500909" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Dec 2020 19:19:49 -0800 IronPort-SDR: 9OhkZd8juYcPcyxuv4vChTvAPu1CrYda6i4zWOHPqWp7kV2x8N65Xb/UY1nvfPMloFyid8uEg0 orUqD2dGwrzg== X-IronPort-AV: E=Sophos;i="5.78,404,1599548400"; d="scan'208";a="363948645" 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:37 -0800 From: Steve Yang 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 Date: Wed, 9 Dec 2020 03:16:19 +0000 Message-Id: <20201209031628.29572-4-stevex.yang@intel.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20201209031628.29572-1-stevex.yang@intel.com> References: <20201209031628.29572-1-stevex.yang@intel.com> Subject: [dpdk-dev] [PATCH v1 03/12] net/hns3: fix the jumbo frame flag condition for mtu set X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" The jumbo frame uses the 'RTE_ETHER_MAX_LEN' as boundary condition, but the Ether overhead is larger than 18 when it supports dual VLAN tags. That will cause the jumbo flag rx offload is wrong when MTU size is 'RTE_ETHER_MTU'. This fix will change the boundary condition with 'RTE_ETHER_MTU'. Fixes: 1f5ca0b460cd ("net/hns3: support some device operations") Fixes: a5475d61fa34 ("net/hns3: support VF") Signed-off-by: Steve Yang --- drivers/net/hns3/hns3_ethdev.c | 2 +- drivers/net/hns3/hns3_ethdev_vf.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/net/hns3/hns3_ethdev.c b/drivers/net/hns3/hns3_ethdev.c index 2011378879..1a5cfd3e1f 100644 --- a/drivers/net/hns3/hns3_ethdev.c +++ b/drivers/net/hns3/hns3_ethdev.c @@ -2458,7 +2458,7 @@ hns3_dev_mtu_set(struct rte_eth_dev *dev, uint16_t mtu) } rte_spinlock_lock(&hw->lock); - is_jumbo_frame = frame_size > RTE_ETHER_MAX_LEN ? true : false; + is_jumbo_frame = mtu > RTE_ETHER_MTU ? true : false; frame_size = RTE_MAX(frame_size, HNS3_DEFAULT_FRAME_LEN); /* diff --git a/drivers/net/hns3/hns3_ethdev_vf.c b/drivers/net/hns3/hns3_ethdev_vf.c index 0366b9d4dc..d47af417bf 100644 --- a/drivers/net/hns3/hns3_ethdev_vf.c +++ b/drivers/net/hns3/hns3_ethdev_vf.c @@ -928,7 +928,7 @@ hns3vf_dev_mtu_set(struct rte_eth_dev *dev, uint16_t mtu) rte_spinlock_unlock(&hw->lock); return ret; } - if (frame_size > RTE_ETHER_MAX_LEN) + if (mtu > RTE_ETHER_MTU) dev->data->dev_conf.rxmode.offloads |= DEV_RX_OFFLOAD_JUMBO_FRAME; else -- 2.17.1