patch 'net/ena: fix bad checksum handling' has been queued to stable release 21.11.8

Kevin Traynor ktraynor at redhat.com
Fri Aug 23 18:18:57 CEST 2024


Hi,

FYI, your patch has been queued to stable release 21.11.8

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 08/28/24. 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/082bd6be7b93ae090f2bdcc55fddc48c3bf16c2f

Thanks.

Kevin

---
>From 082bd6be7b93ae090f2bdcc55fddc48c3bf16c2f Mon Sep 17 00:00:00 2001
From: Shai Brandes <shaibran at amazon.com>
Date: Tue, 2 Jul 2024 17:46:22 +0300
Subject: [PATCH] net/ena: fix bad checksum handling

[ upstream commit fa4bb7025255036fcff9556c637efa2627ac4af4 ]

Removed a workaround for a false L4 bad Rx csum
indication from the device. The workaround was to set it
as unknown so the application would check it instead.
The issue was fixed in the device, thus the driver bad csum
handling should be fixed in the PMD.

Fixes: b2d2f1cf89a6 ("net/ena: fix checksum flag for L4")

Signed-off-by: Shai Brandes <shaibran at amazon.com>
---
 drivers/net/ena/ena_ethdev.c | 8 +-------
 1 file changed, 1 insertion(+), 7 deletions(-)

diff --git a/drivers/net/ena/ena_ethdev.c b/drivers/net/ena/ena_ethdev.c
index 1c61f793e6..84c41f1b9d 100644
--- a/drivers/net/ena/ena_ethdev.c
+++ b/drivers/net/ena/ena_ethdev.c
@@ -311,11 +311,5 @@ static inline void ena_rx_mbuf_prepare(struct rte_mbuf *mbuf,
 	else
 		if (unlikely(ena_rx_ctx->l4_csum_err))
-			/*
-			 * For the L4 Rx checksum offload the HW may indicate
-			 * bad checksum although it's valid. Because of that,
-			 * we're setting the UNKNOWN flag to let the app
-			 * re-verify the checksum.
-			 */
-			ol_flags |= RTE_MBUF_F_RX_L4_CKSUM_UNKNOWN;
+			ol_flags |= RTE_MBUF_F_RX_L4_CKSUM_BAD;
 		else
 			ol_flags |= RTE_MBUF_F_RX_L4_CKSUM_GOOD;
-- 
2.46.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2024-08-23 17:18:12.913173354 +0100
+++ 0109-net-ena-fix-bad-checksum-handling.patch	2024-08-23 17:18:09.849430556 +0100
@@ -1 +1 @@
-From fa4bb7025255036fcff9556c637efa2627ac4af4 Mon Sep 17 00:00:00 2001
+From 082bd6be7b93ae090f2bdcc55fddc48c3bf16c2f Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit fa4bb7025255036fcff9556c637efa2627ac4af4 ]
+
@@ -13 +14,0 @@
-Cc: stable at dpdk.org
@@ -21 +22 @@
-index 4e7171e629..b43b913903 100644
+index 1c61f793e6..84c41f1b9d 100644
@@ -24,3 +25,3 @@
-@@ -675,11 +675,5 @@ static inline void ena_rx_mbuf_prepare(struct ena_ring *rx_ring,
- 		if (unlikely(ena_rx_ctx->l4_csum_err)) {
- 			++rx_stats->l4_csum_bad;
+@@ -311,11 +311,5 @@ static inline void ena_rx_mbuf_prepare(struct rte_mbuf *mbuf,
+ 	else
+ 		if (unlikely(ena_rx_ctx->l4_csum_err))
@@ -35,2 +36,2 @@
- 		} else {
- 			++rx_stats->l4_csum_good;
+ 		else
+ 			ol_flags |= RTE_MBUF_F_RX_L4_CKSUM_GOOD;



More information about the stable mailing list