patch 'net/i40e: fix max frame size config at port level' has been queued to stable release 20.11.6

Xueming Li xuemingl at nvidia.com
Tue Jun 21 10:02:43 CEST 2022


Hi,

FYI, your patch has been queued to stable release 20.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 06/23/22. So please
shout if anyone has objections.

Also note that after the patch there's a diff of the upstream commit vs the
patch applied to the branch. This will indicate if there was any rebasing
needed to apply to the stable branch. If there were code changes for rebasing
(ie: not only metadata diffs), please double check that the rebase was
correctly done.

Queued patches are on a temporary branch at:
https://github.com/steevenlee/dpdk

This queued commit can be viewed at:
https://github.com/steevenlee/dpdk/commit/5b55b9b1ea723a2cebc8f51a44b3ae17055a0dd9

Thanks.

Xueming Li <xuemingl at nvidia.com>

---
>From 5b55b9b1ea723a2cebc8f51a44b3ae17055a0dd9 Mon Sep 17 00:00:00 2001
From: Wenxuan Wu <wenxuanx.wu at intel.com>
Date: Wed, 18 May 2022 04:59:14 +0000
Subject: [PATCH] net/i40e: fix max frame size config at port level
Cc: Xueming Li <xuemingl at nvidia.com>

[ upstream commit 2184f7cdeeaa7eb814e102fd01773db204ccd3bf ]

Previously, max frame size can only be set when link is up, and the wait
time is 1 sec. Startup time of 10G_BASET longer than 1s would result in
failure.

Actually, max frame size of media type I40E_MEDIA_TYPE_BASET can be set
regardless of link status.

This patch omitted the link status check of 10G_MEDIA_TYPE_BASET.

Fixes: a4ba77367923 ("net/i40e: enable maximum frame size at port level")

Signed-off-by: Wenxuan Wu <wenxuanx.wu at intel.com>
Acked-by: Yuying Zhang <yuying.zhang at intel.com>
---
 drivers/net/i40e/i40e_ethdev.c | 20 ++++++++++++--------
 1 file changed, 12 insertions(+), 8 deletions(-)

diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c
index e396e82f06..c2d52e4acc 100644
--- a/drivers/net/i40e/i40e_ethdev.c
+++ b/drivers/net/i40e/i40e_ethdev.c
@@ -13139,16 +13139,20 @@ i40e_set_mac_max_frame(struct rte_eth_dev *dev, uint16_t size)
 	uint32_t rep_cnt = MAX_REPEAT_TIME;
 	struct rte_eth_link link;
 	enum i40e_status_code status;
+	bool can_be_set = true;
 
-	do {
-		update_link_reg(hw, &link);
-		if (link.link_status)
-			break;
-
-		rte_delay_ms(CHECK_INTERVAL);
-	} while (--rep_cnt);
+	/* I40E_MEDIA_TYPE_BASET link up can be ignored */
+	if (hw->phy.media_type != I40E_MEDIA_TYPE_BASET) {
+		do {
+			update_link_reg(hw, &link);
+			if (link.link_status)
+				break;
+			rte_delay_ms(CHECK_INTERVAL);
+		} while (--rep_cnt);
+		can_be_set = !!link.link_status;
+	}
 
-	if (link.link_status) {
+	if (can_be_set) {
 		status = i40e_aq_set_mac_config(hw, size, TRUE, 0, false, NULL);
 		if (status != I40E_SUCCESS)
 			PMD_DRV_LOG(ERR, "Failed to set max frame size at port level");
-- 
2.35.1

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2022-06-21 15:37:53.573089897 +0800
+++ 0097-net-i40e-fix-max-frame-size-config-at-port-level.patch	2022-06-21 15:37:49.207785188 +0800
@@ -1 +1 @@
-From 2184f7cdeeaa7eb814e102fd01773db204ccd3bf Mon Sep 17 00:00:00 2001
+From 5b55b9b1ea723a2cebc8f51a44b3ae17055a0dd9 Mon Sep 17 00:00:00 2001
@@ -4,0 +5,3 @@
+Cc: Xueming Li <xuemingl at nvidia.com>
+
+[ upstream commit 2184f7cdeeaa7eb814e102fd01773db204ccd3bf ]
@@ -16 +18,0 @@
-Cc: stable at dpdk.org
@@ -25 +27 @@
-index 755786dc10..7ffd7e7384 100644
+index e396e82f06..c2d52e4acc 100644
@@ -28 +30 @@
-@@ -12103,16 +12103,20 @@ i40e_set_mac_max_frame(struct rte_eth_dev *dev, uint16_t size)
+@@ -13139,16 +13139,20 @@ i40e_set_mac_max_frame(struct rte_eth_dev *dev, uint16_t size)


More information about the stable mailing list