patch 'net/ixgbe: fix DCB Rx buffer size on X540 and E610' has been queued to stable release 24.11.9
luca.boccassi at gmail.com
luca.boccassi at gmail.com
Tue Oct 27 12:50:46 CET 2026
Hi,
FYI, your patch has been queued to stable release 24.11.9
Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 10/29/26. 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/bluca/dpdk-stable
This queued commit can be viewed at:
https://github.com/bluca/dpdk-stable/commit/6a35e52aec040da8f34f30fed3709fc7fd4da810
Thanks.
Luca Boccassi
---
>From 6a35e52aec040da8f34f30fed3709fc7fd4da810 Mon Sep 17 00:00:00 2001
From: Zhang Tengfei <zhtfdev at gmail.com>
Date: Sun, 27 Sep 2026 12:59:43 +0800
Subject: [PATCH] net/ixgbe: fix DCB Rx buffer size on X540 and E610
[ upstream commit fa131b2f66cc5dc0bd4c534e8e928d8d89c0997f ]
DCB programs RXPBSIZE from a hardcoded total, 384 KB for X550
and 512 KB for every other MAC. The base driver records 384 KB
in hw->mac.rx_pb_size for X540, and E610 inherits that through
the X540 init ops. X540 and E610 reset also write 384 KB.
Use hw->mac.rx_pb_size for the split, including the PFC
watermarks derived from it. 82598, 82599 and X550 are unchanged.
Fixes: b7fcd13c90a3 ("ixgbe: fix X550 DCB")
Fixes: 316637762a5f ("net/ixgbe/base: enable E610 device")
Signed-off-by: Zhang Tengfei <zhtfdev at gmail.com>
Acked-by: Bruce Richardson <bruce.richardson at intel.com>
---
.mailmap | 2 +-
drivers/net/ixgbe/ixgbe_rxtx.c | 27 ++++-----------------------
2 files changed, 5 insertions(+), 24 deletions(-)
diff --git a/.mailmap b/.mailmap
index cca24f913cb..f6a14babc30 100644
--- a/.mailmap
+++ b/.mailmap
@@ -1600,7 +1600,6 @@ Tarun Singh <tarun.k.singh at intel.com>
Tasnim Bashar <tbashar at nvidia.com> <tbashar at mellanox.com>
Tathagat Priyadarshi <tathagat.dpdk at gmail.com>
Tejasree Kondoj <ktejasree at marvell.com> <kondoj.tejasree at caviumnetworks.com>
-Tengfei Zhang <zhtfdev at gmail.com> <zypscode at outlook.com>
Tero Aho <tero.aho at coriant.com>
Tetsuya Mukawa <mtetsuyah at gmail.com> <mukawa at igel.co.jp>
Thadeu Lima de Souza Cascardo <cascardo at redhat.com>
@@ -1891,6 +1890,7 @@ Zalfresso-Jundzillo <marekx.zalfresso-jundzillo at intel.com>
Zbigniew Bodek <zbigniew.bodek at caviumnetworks.com>
Zengmo Gao <gaozengmo at jd.com>
Zerun Fu <zerun.fu at corigine.com>
+Zhang Tengfei <zhtfdev at gmail.com> <zypscode at outlook.com>
Zhangfei Gao <zhangfei.gao at linaro.org>
Zhangkun <zhangk.zhangkun at huawei.com>
Zhaochen Zhan <zhaochen.zhan at intel.com>
diff --git a/drivers/net/ixgbe/ixgbe_rxtx.c b/drivers/net/ixgbe/ixgbe_rxtx.c
index e99e9d38696..1ea05c81b32 100644
--- a/drivers/net/ixgbe/ixgbe_rxtx.c
+++ b/drivers/net/ixgbe/ixgbe_rxtx.c
@@ -3755,8 +3755,6 @@ ixgbe_rss_configure(struct rte_eth_dev *dev)
}
#define NUM_VFTA_REGISTERS 128
-#define NIC_RX_BUFFER_SIZE 0x200
-#define X550_RX_BUFFER_SIZE 0x180
static void
ixgbe_vmdq_dcb_configure(struct rte_eth_dev *dev)
@@ -3783,18 +3781,10 @@ ixgbe_vmdq_dcb_configure(struct rte_eth_dev *dev)
/*
* RXPBSIZE
- * split rx buffer up into sections, each for 1 traffic class
+ * Split the MAC Rx packet buffer equally across traffic classes.
+ * hw->mac.rx_pb_size is the total size in KB.
*/
- switch (hw->mac.type) {
- case ixgbe_mac_X550:
- case ixgbe_mac_X550EM_x:
- case ixgbe_mac_X550EM_a:
- pbsize = (uint16_t)(X550_RX_BUFFER_SIZE / nb_tcs);
- break;
- default:
- pbsize = (uint16_t)(NIC_RX_BUFFER_SIZE / nb_tcs);
- break;
- }
+ pbsize = (uint16_t)(hw->mac.rx_pb_size / nb_tcs);
for (i = 0; i < nb_tcs; i++) {
uint32_t rxpbsize = IXGBE_READ_REG(hw, IXGBE_RXPBSIZE(i));
@@ -4314,16 +4304,7 @@ ixgbe_dcb_hw_configure(struct rte_eth_dev *dev,
}
}
- switch (hw->mac.type) {
- case ixgbe_mac_X550:
- case ixgbe_mac_X550EM_x:
- case ixgbe_mac_X550EM_a:
- rx_buffer_size = X550_RX_BUFFER_SIZE;
- break;
- default:
- rx_buffer_size = NIC_RX_BUFFER_SIZE;
- break;
- }
+ rx_buffer_size = (uint16_t)hw->mac.rx_pb_size;
if (config_dcb_rx) {
/* Set RX buffer size */
--
2.47.3
---
Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- - 2026-10-27 11:43:59.555387754 +0000
+++ 0152-net-ixgbe-fix-DCB-Rx-buffer-size-on-X540-and-E610.patch 2026-10-27 11:43:53.698065144 +0000
@@ -1 +1 @@
-From fa131b2f66cc5dc0bd4c534e8e928d8d89c0997f Mon Sep 17 00:00:00 2001
+From 6a35e52aec040da8f34f30fed3709fc7fd4da810 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit fa131b2f66cc5dc0bd4c534e8e928d8d89c0997f ]
+
@@ -16 +17,0 @@
-Cc: stable at dpdk.org
@@ -21,2 +22,2 @@
- .mailmap | 2 +-
- drivers/net/intel/ixgbe/ixgbe_rxtx.c | 27 ++++-----------------------
+ .mailmap | 2 +-
+ drivers/net/ixgbe/ixgbe_rxtx.c | 27 ++++-----------------------
@@ -26 +27 @@
-index ad5fa21fd7..67ff247224 100644
+index cca24f913cb..f6a14babc30 100644
@@ -29 +30 @@
-@@ -1691,7 +1691,6 @@ Tarun Singh <tarun.k.singh at intel.com>
+@@ -1600,7 +1600,6 @@ Tarun Singh <tarun.k.singh at intel.com>
@@ -37 +38 @@
-@@ -1992,6 +1991,7 @@ Zaiyu Wang <zaiyuwang at trustnetic.com>
+@@ -1891,6 +1890,7 @@ Zalfresso-Jundzillo <marekx.zalfresso-jundzillo at intel.com>
@@ -44,6 +45,6 @@
- Zhanibek Bakin <zhanibek.bakin at gmail.com>
-diff --git a/drivers/net/intel/ixgbe/ixgbe_rxtx.c b/drivers/net/intel/ixgbe/ixgbe_rxtx.c
-index ce0a3dde34..4bda234aee 100644
---- a/drivers/net/intel/ixgbe/ixgbe_rxtx.c
-+++ b/drivers/net/intel/ixgbe/ixgbe_rxtx.c
-@@ -3835,8 +3835,6 @@ ixgbe_rss_configure(struct rte_eth_dev *dev)
+ Zhaochen Zhan <zhaochen.zhan at intel.com>
+diff --git a/drivers/net/ixgbe/ixgbe_rxtx.c b/drivers/net/ixgbe/ixgbe_rxtx.c
+index e99e9d38696..1ea05c81b32 100644
+--- a/drivers/net/ixgbe/ixgbe_rxtx.c
++++ b/drivers/net/ixgbe/ixgbe_rxtx.c
+@@ -3755,8 +3755,6 @@ ixgbe_rss_configure(struct rte_eth_dev *dev)
@@ -58 +59 @@
-@@ -3863,18 +3861,10 @@ ixgbe_vmdq_dcb_configure(struct rte_eth_dev *dev)
+@@ -3783,18 +3781,10 @@ ixgbe_vmdq_dcb_configure(struct rte_eth_dev *dev)
@@ -80 +81 @@
-@@ -4394,16 +4384,7 @@ ixgbe_dcb_hw_configure(struct rte_eth_dev *dev,
+@@ -4314,16 +4304,7 @@ ixgbe_dcb_hw_configure(struct rte_eth_dev *dev,
More information about the stable
mailing list