patch 'net/i40e: fix symmetric Toeplitz hashing for SCTP' has been queued to stable release 24.11.4

Kevin Traynor ktraynor at redhat.com
Fri Oct 31 15:33:25 CET 2025


Hi,

FYI, your patch has been queued to stable release 24.11.4

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 11/05/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/1644c280dd1e398c0c5c96f6d7a3045446cfcdcf

Thanks.

Kevin

---
>From 1644c280dd1e398c0c5c96f6d7a3045446cfcdcf Mon Sep 17 00:00:00 2001
From: Anurag Mandal <anurag.mandal at intel.com>
Date: Wed, 15 Oct 2025 23:41:50 +0530
Subject: [PATCH] net/i40e: fix symmetric Toeplitz hashing for SCTP

[ upstream commit 09937a3646f83ffe9d0d27896066c3f3f6e4ee0c ]

When symmetric toeplitz is configured for SCTP, packets belonging
to the same SCTP session are getting distributed to multiple queues
due to improper hash computation.

Removed SCTP Verification Tag from hash computation of symmetric toeplitz
as it changes for same SCTP session.

Tested the following with the fix & enabling symmetric toeplitz for
SCTP:
1. Packets belonging to the same SCTP session getting into the same
   queue.
2. Packets belonging to the different SCTP sessions getting
   distributed to multiple queues.

Fixes: ef4c16fd9148 ("net/i40e: refactor RSS flow")

Signed-off-by: Anurag Mandal <anurag.mandal at intel.com>
Acked-by: Bruce Richardson <bruce.richardson at intel.com>
---
 .mailmap                     |  1 +
 drivers/net/i40e/i40e_hash.c | 16 ++++++++++++++--
 2 files changed, 15 insertions(+), 2 deletions(-)

diff --git a/.mailmap b/.mailmap
index bab1bcf3db..b0c4217927 100644
--- a/.mailmap
+++ b/.mailmap
@@ -135,4 +135,5 @@ Antonio Fischetti <antonio.fischetti at intel.com>
 Anup Prabhu <aprabhu at marvell.com>
 Anupam Kapoor <anupam.kapoor at gmail.com>
+Anurag Mandal <anurag.mandal at intel.com>
 Apeksha Gupta <apeksha.gupta at nxp.com>
 Archana Muniganti <marchana at marvell.com> <muniganti.archana at caviumnetworks.com>
diff --git a/drivers/net/i40e/i40e_hash.c b/drivers/net/i40e/i40e_hash.c
index 02e1457d80..3149682197 100644
--- a/drivers/net/i40e/i40e_hash.c
+++ b/drivers/net/i40e/i40e_hash.c
@@ -562,5 +562,5 @@ i40e_hash_get_pattern_pctypes(const struct rte_eth_dev *dev,
 
 static uint64_t
-i40e_hash_get_inset(uint64_t rss_types)
+i40e_hash_get_inset(uint64_t rss_types, bool symmetric_enable)
 {
 	uint64_t mask, inset = 0;
@@ -609,4 +609,15 @@ i40e_hash_get_inset(uint64_t rss_types)
 	}
 
+	/* SCTP Verification Tag is not required in hash computation for SYMMETRIC_TOEPLITZ */
+	if (symmetric_enable) {
+		mask = rss_types & RTE_ETH_RSS_NONFRAG_IPV4_SCTP;
+		if (mask == RTE_ETH_RSS_NONFRAG_IPV4_SCTP)
+			inset &= ~I40E_INSET_SCTP_VT;
+
+		mask = rss_types & RTE_ETH_RSS_NONFRAG_IPV6_SCTP;
+		if (mask == RTE_ETH_RSS_NONFRAG_IPV6_SCTP)
+			inset &= ~I40E_INSET_SCTP_VT;
+	}
+
 	return inset;
 }
@@ -1114,4 +1125,5 @@ i40e_hash_parse_pattern_act(const struct rte_eth_dev *dev,
 					  NULL,
 					  "RSS Queues not supported when pattern specified");
+	rss_conf->symmetric_enable = false;  /* by default, symmetric is disabled */
 
 	switch (rss_act->func) {
@@ -1141,5 +1153,5 @@ i40e_hash_parse_pattern_act(const struct rte_eth_dev *dev,
 	rss_conf->conf.func = rss_act->func;
 	rss_conf->conf.types = rss_act->types;
-	rss_conf->inset = i40e_hash_get_inset(rss_act->types);
+	rss_conf->inset = i40e_hash_get_inset(rss_act->types, rss_conf->symmetric_enable);
 
 	return i40e_hash_get_pattern_pctypes(dev, pattern, rss_act,
-- 
2.51.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2025-10-31 13:53:54.740258367 +0000
+++ 0083-net-i40e-fix-symmetric-Toeplitz-hashing-for-SCTP.patch	2025-10-31 13:53:52.185523833 +0000
@@ -1 +1 @@
-From 09937a3646f83ffe9d0d27896066c3f3f6e4ee0c Mon Sep 17 00:00:00 2001
+From 1644c280dd1e398c0c5c96f6d7a3045446cfcdcf Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 09937a3646f83ffe9d0d27896066c3f3f6e4ee0c ]
+
@@ -21 +22,0 @@
-Cc: stable at dpdk.org
@@ -26,2 +27,2 @@
- .mailmap                           |  1 +
- drivers/net/intel/i40e/i40e_hash.c | 16 ++++++++++++++--
+ .mailmap                     |  1 +
+ drivers/net/i40e/i40e_hash.c | 16 ++++++++++++++--
@@ -31 +32 @@
-index c14288e1c7..adce7ee286 100644
+index bab1bcf3db..b0c4217927 100644
@@ -34 +35 @@
-@@ -137,4 +137,5 @@ Antonio Fischetti <antonio.fischetti at intel.com>
+@@ -135,4 +135,5 @@ Antonio Fischetti <antonio.fischetti at intel.com>
@@ -40 +41 @@
-diff --git a/drivers/net/intel/i40e/i40e_hash.c b/drivers/net/intel/i40e/i40e_hash.c
+diff --git a/drivers/net/i40e/i40e_hash.c b/drivers/net/i40e/i40e_hash.c
@@ -42,2 +43,2 @@
---- a/drivers/net/intel/i40e/i40e_hash.c
-+++ b/drivers/net/intel/i40e/i40e_hash.c
+--- a/drivers/net/i40e/i40e_hash.c
++++ b/drivers/net/i40e/i40e_hash.c



More information about the stable mailing list