patch 'net/ixgbe: fix IPv6 mask in flow director' has been queued to stable release 22.11.2

Xueming Li xuemingl at nvidia.com
Sun Apr 9 17:23:55 CEST 2023


Hi,

FYI, your patch has been queued to stable release 22.11.2

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 04/11/23. 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://git.dpdk.org/dpdk-stable/log/?h=22.11-staging

This queued commit can be viewed at:
https://git.dpdk.org/dpdk-stable/log/?h=22.11-staging/commit/dc67b490e8485bc61fdc6d07352dd5242a5e9722

Thanks.

Xueming Li <xuemingl at nvidia.com>

---
>From dc67b490e8485bc61fdc6d07352dd5242a5e9722 Mon Sep 17 00:00:00 2001
From: Kaiwen Deng <kaiwenx.deng at intel.com>
Date: Fri, 3 Mar 2023 12:52:26 +0800
Subject: [PATCH] net/ixgbe: fix IPv6 mask in flow director
Cc: Xueming Li <xuemingl at nvidia.com>

[ upstream commit 444505f933f197bd064c7f801fa86e88d5edfce5 ]

Rules without addr mask cannot be created together in ixgbe
when setting IPv6 addr mask to default value as 0.

This commit is to change the default value of IPv6 addr mask as '0xFF'.

Fixes: cba954b7beda ("net/ixgbe: enable IPv6 mask in flow rules")
Fixes: 7d629cacedee ("net/ixgbe: enable IPv6 for consistent API")

Signed-off-by: Kaiwen Deng <kaiwenx.deng at intel.com>
Tested-by: Song Jiale <songx.jiale at intel.com>
---
 .mailmap                       |  1 +
 drivers/net/ixgbe/ixgbe_flow.c | 16 ++++++----------
 2 files changed, 7 insertions(+), 10 deletions(-)

diff --git a/.mailmap b/.mailmap
index ea09ef90cb..e9ecebafc1 100644
--- a/.mailmap
+++ b/.mailmap
@@ -1247,6 +1247,7 @@ Smadar Fuks <smadarf at marvell.com>
 Solal Pirelli <solal.pirelli at gmail.com>
 Solganik Alexander <sashas at lightbitslabs.com>
 Somnath Kotur <somnath.kotur at broadcom.com>
+Song Jiale <songx.jiale at intel.com>
 Song Zhu <song.zhu at arm.com>
 Sony Chacko <sony.chacko at qlogic.com>
 Sotiris Salloumis <sotiris.salloumis at ericsson.com>
diff --git a/drivers/net/ixgbe/ixgbe_flow.c b/drivers/net/ixgbe/ixgbe_flow.c
index d2ba87df27..7cccbfddb3 100644
--- a/drivers/net/ixgbe/ixgbe_flow.c
+++ b/drivers/net/ixgbe/ixgbe_flow.c
@@ -1645,10 +1645,6 @@ ixgbe_parse_fdir_filter_normal(struct rte_eth_dev *dev,
 	memset(&rule->mask, 0xFF, sizeof(struct ixgbe_hw_fdir_mask));
 	rule->mask.vlan_tci_mask = 0;
 	rule->mask.flex_bytes_mask = 0;
-	rule->mask.dst_port_mask = 0;
-	rule->mask.src_port_mask = 0;
-	rule->mask.src_ipv6_mask = 0;
-	rule->mask.dst_ipv6_mask = 0;
 
 	/**
 	 * The first not void item should be
@@ -1922,9 +1918,9 @@ ixgbe_parse_fdir_filter_normal(struct rte_eth_dev *dev,
 
 		/* check src addr mask */
 		for (j = 0; j < 16; j++) {
-			if (ipv6_mask->hdr.src_addr[j] == UINT8_MAX) {
-				rule->mask.src_ipv6_mask |= 1 << j;
-			} else if (ipv6_mask->hdr.src_addr[j] != 0) {
+			if (ipv6_mask->hdr.src_addr[j] == 0) {
+				rule->mask.src_ipv6_mask &= ~(1 << j);
+			} else if (ipv6_mask->hdr.src_addr[j] != UINT8_MAX) {
 				memset(rule, 0, sizeof(struct ixgbe_fdir_rule));
 				rte_flow_error_set(error, EINVAL,
 					RTE_FLOW_ERROR_TYPE_ITEM,
@@ -1935,9 +1931,9 @@ ixgbe_parse_fdir_filter_normal(struct rte_eth_dev *dev,
 
 		/* check dst addr mask */
 		for (j = 0; j < 16; j++) {
-			if (ipv6_mask->hdr.dst_addr[j] == UINT8_MAX) {
-				rule->mask.dst_ipv6_mask |= 1 << j;
-			} else if (ipv6_mask->hdr.dst_addr[j] != 0) {
+			if (ipv6_mask->hdr.dst_addr[j] == 0) {
+				rule->mask.dst_ipv6_mask &= ~(1 << j);
+			} else if (ipv6_mask->hdr.dst_addr[j] != UINT8_MAX) {
 				memset(rule, 0, sizeof(struct ixgbe_fdir_rule));
 				rte_flow_error_set(error, EINVAL,
 					RTE_FLOW_ERROR_TYPE_ITEM,
-- 
2.25.1

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2023-04-09 21:45:39.986689900 +0800
+++ 0047-net-ixgbe-fix-IPv6-mask-in-flow-director.patch	2023-04-09 21:45:38.649042200 +0800
@@ -1 +1 @@
-From 444505f933f197bd064c7f801fa86e88d5edfce5 Mon Sep 17 00:00:00 2001
+From dc67b490e8485bc61fdc6d07352dd5242a5e9722 Mon Sep 17 00:00:00 2001
@@ -4,0 +5,3 @@
+Cc: Xueming Li <xuemingl at nvidia.com>
+
+[ upstream commit 444505f933f197bd064c7f801fa86e88d5edfce5 ]
@@ -13 +15,0 @@
-Cc: stable at dpdk.org
@@ -23 +25 @@
-index 69b6f4de1d..5b42f87d1e 100644
+index ea09ef90cb..e9ecebafc1 100644
@@ -26 +28 @@
-@@ -1253,6 +1253,7 @@ Smadar Fuks <smadarf at marvell.com>
+@@ -1247,6 +1247,7 @@ Smadar Fuks <smadarf at marvell.com>
@@ -35 +37 @@
-index 79c84044af..eac81ee489 100644
+index d2ba87df27..7cccbfddb3 100644


More information about the stable mailing list