patch 'net/hns3: check requirement for hardware GRO' has been queued to stable release 24.11.3
Kevin Traynor
ktraynor at redhat.com
Fri Jul 18 21:30:34 CEST 2025
Hi,
FYI, your patch has been queued to stable release 24.11.3
Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 07/23/25. 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/kevintraynor/dpdk-stable
This queued commit can be viewed at:
https://github.com/kevintraynor/dpdk-stable/commit/2b7f9c7142618bcf4754835ee1bf569ea42fb82f
Thanks.
Kevin
---
>From 2b7f9c7142618bcf4754835ee1bf569ea42fb82f Mon Sep 17 00:00:00 2001
From: Dengdui Huang <huangdengdui at huawei.com>
Date: Mon, 9 Jun 2025 21:06:49 +0800
Subject: [PATCH] net/hns3: check requirement for hardware GRO
[ upstream commit ae68b5d91c632a1dde839123f27b0317cf094170 ]
The HIP08 platform requires that data address be 64-byte aligned
for the GRO feature.
Most applications already use 64-byte aligned. So a check is added
to avoid using the GRO function when 64-byte aligned is used.
Fixes: d14c995b775a ("net/hns3: check Rx DMA address alignmnent")
Signed-off-by: Dengdui Huang <huangdengdui at huawei.com>
---
drivers/net/hns3/hns3_rxtx.c | 17 +++++++++++++++--
1 file changed, 15 insertions(+), 2 deletions(-)
diff --git a/drivers/net/hns3/hns3_rxtx.c b/drivers/net/hns3/hns3_rxtx.c
index 00a105129d..bfe4c0fa2e 100644
--- a/drivers/net/hns3/hns3_rxtx.c
+++ b/drivers/net/hns3/hns3_rxtx.c
@@ -277,10 +277,23 @@ static int
hns3_check_rx_dma_addr(struct hns3_hw *hw, uint64_t dma_addr)
{
+ uint64_t rx_offload = hw->data->dev_conf.rxmode.offloads;
uint64_t rem;
rem = dma_addr & (hw->rx_dma_addr_align - 1);
if (rem > 0) {
- hns3_err(hw, "The IO address of the beginning of the mbuf data "
- "must be %u-byte aligned", hw->rx_dma_addr_align);
+ hns3_err(hw,
+ "mbuf DMA address must be %u-byte aligned",
+ hw->rx_dma_addr_align);
+ return -EINVAL;
+ }
+
+ /*
+ * This check is for HIP08 network engine. The GRO function
+ * requires that mbuf DMA address is 64-byte aligned.
+ */
+ rem = dma_addr & (HNS3_RX_DMA_ADDR_ALIGN_128 - 1);
+ if ((rx_offload & RTE_ETH_RX_OFFLOAD_TCP_LRO) && rem > 0) {
+ hns3_err(hw,
+ "GRO requires that mbuf DMA address be 64-byte aligned");
return -EINVAL;
}
--
2.50.0
---
Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- - 2025-07-18 20:29:14.472660495 +0100
+++ 0100-net-hns3-check-requirement-for-hardware-GRO.patch 2025-07-18 20:29:11.015907591 +0100
@@ -1 +1 @@
-From ae68b5d91c632a1dde839123f27b0317cf094170 Mon Sep 17 00:00:00 2001
+From 2b7f9c7142618bcf4754835ee1bf569ea42fb82f Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit ae68b5d91c632a1dde839123f27b0317cf094170 ]
+
@@ -13 +14,0 @@
-Cc: stable at dpdk.org
@@ -21 +22 @@
-index bde46733b0..f9fde3948a 100644
+index 00a105129d..bfe4c0fa2e 100644
@@ -24 +25 @@
-@@ -282,10 +282,23 @@ static int
+@@ -277,10 +277,23 @@ static int
More information about the stable
mailing list