From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 0518DA0A03; Mon, 18 Jan 2021 08:09:47 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 105C8140DBA; Mon, 18 Jan 2021 08:08:40 +0100 (CET) Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by mails.dpdk.org (Postfix) with ESMTP id 0F94F140DB4 for ; Mon, 18 Jan 2021 08:08:37 +0100 (CET) IronPort-SDR: auno2l1vJroGNeAqabMA53RJ8yly+9Sb520u57a24vDFmry5lm1ChzUKZahMx5XQZm2HUF0qow qPlELPmzKD6w== X-IronPort-AV: E=McAfee;i="6000,8403,9867"; a="197460207" X-IronPort-AV: E=Sophos;i="5.79,355,1602572400"; d="scan'208";a="197460207" Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Jan 2021 23:08:37 -0800 IronPort-SDR: l0DMqMqp2R+h20gHYt/v5JRb9Mk0Ppd1JN7vb+9OFQCM9l0Zr/GTW50G/Tow/2J3VFSbBrl7Pm 6vj/M7T/ZdeA== X-IronPort-AV: E=Sophos;i="5.79,355,1602572400"; d="scan'208";a="355086910" Received: from intel-npg-odc-srv01.cd.intel.com ([10.240.178.136]) by fmsmga008-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Jan 2021 23:08:35 -0800 From: Steve Yang To: dev@dpdk.org Cc: Steve Yang , Rasesh Mody , Shahed Shaikh Date: Mon, 18 Jan 2021 07:04:19 +0000 Message-Id: <20210118070428.36998-14-stevex.yang@intel.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20210118070428.36998-1-stevex.yang@intel.com> References: <20210114094537.13661-1-stevex.yang@intel.com> <20210118070428.36998-1-stevex.yang@intel.com> Subject: [dpdk-dev] [PATCH v4 13/22] net/qede: fix the jumbo frame flag condition for mtu set X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 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' and overhead, that perhaps impacts the cases of the jumbo frame related. Fixes: 200645ac7909 ("net/qede: set MTU") Cc: Rasesh Mody Cc: Shahed Shaikh Signed-off-by: Steve Yang --- drivers/net/qede/qede_ethdev.c | 2 +- drivers/net/qede/qede_rxtx.h | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/net/qede/qede_ethdev.c b/drivers/net/qede/qede_ethdev.c index 549013557c..6919378b8e 100644 --- a/drivers/net/qede/qede_ethdev.c +++ b/drivers/net/qede/qede_ethdev.c @@ -2367,7 +2367,7 @@ static int qede_set_mtu(struct rte_eth_dev *dev, uint16_t mtu) fp->rxq->rx_buf_size = rc; } } - if (max_rx_pkt_len > RTE_ETHER_MAX_LEN) + if (frame_size > QEDE_ETH_MAX_LEN) dev->data->dev_conf.rxmode.offloads |= DEV_RX_OFFLOAD_JUMBO_FRAME; else dev->data->dev_conf.rxmode.offloads &= ~DEV_RX_OFFLOAD_JUMBO_FRAME; diff --git a/drivers/net/qede/qede_rxtx.h b/drivers/net/qede/qede_rxtx.h index d7ff870b20..fcb564a1bb 100644 --- a/drivers/net/qede/qede_rxtx.h +++ b/drivers/net/qede/qede_rxtx.h @@ -71,6 +71,7 @@ + (QEDE_LLC_SNAP_HDR_LEN) + 2) #define QEDE_MAX_ETHER_HDR_LEN (RTE_ETHER_HDR_LEN + QEDE_ETH_OVERHEAD) +#define QEDE_ETH_MAX_LEN (RTE_ETHER_MTU + QEDE_MAX_ETHER_HDR_LEN) #define QEDE_RSS_OFFLOAD_ALL (ETH_RSS_IPV4 |\ ETH_RSS_NONFRAG_IPV4_TCP |\ -- 2.17.1