patch 'net/ice/base: fix array overflow in add switch recipe' has been queued to stable release 19.11.14

christian.ehrhardt at canonical.com christian.ehrhardt at canonical.com
Fri Nov 11 12:38:38 CET 2022


Hi,

FYI, your patch has been queued to stable release 19.11.14

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/18/22. 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/cpaelzer/dpdk-stable-queue

This queued commit can be viewed at:
https://github.com/cpaelzer/dpdk-stable-queue/commit/542536e5f11a7a81f0291a4859a01cf1aadbe58f

Thanks.

Christian Ehrhardt <christian.ehrhardt at canonical.com>

---
>From 542536e5f11a7a81f0291a4859a01cf1aadbe58f Mon Sep 17 00:00:00 2001
From: Qi Zhang <qi.z.zhang at intel.com>
Date: Mon, 15 Aug 2022 03:31:25 -0400
Subject: [PATCH] net/ice/base: fix array overflow in add switch recipe

[ upstream commit 289b2846c187aa061c13d6a499d0321f581390a5 ]

The array indexes in this function are used with a zero index in the
fv_idx table, and with a +1 index in the lkup_idx arrays. The code
was using the lookup index for the field vector in only one place in
this function, but the code was never used after this point so just
remove the bad line.

This was caught by the undefined behavior sanitizer.

Fixes: fed0c5ca5f19 ("net/ice/base: support programming a new switch recipe")

Signed-off-by: Jesse Brandeburg <jesse.brandeburg at intel.com>
Signed-off-by: Qi Zhang <qi.z.zhang at intel.com>
Acked-by: Qiming Yang <qiming.yang at intel.com>
---
 drivers/net/ice/base/ice_switch.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/net/ice/base/ice_switch.c b/drivers/net/ice/base/ice_switch.c
index 6899502a93..5fe6e9ea69 100644
--- a/drivers/net/ice/base/ice_switch.c
+++ b/drivers/net/ice/base/ice_switch.c
@@ -5199,7 +5199,6 @@ ice_add_sw_recipe(struct ice_hw *hw, struct ice_sw_recipe *rm,
 		last_chain_entry->chain_idx = ICE_INVAL_CHAIN_IND;
 		LIST_FOR_EACH_ENTRY(entry, &rm->rg_list, ice_recp_grp_entry,
 				    l_entry) {
-			last_chain_entry->fv_idx[i] = entry->chain_idx;
 			buf[recps].content.lkup_indx[i] = entry->chain_idx;
 			buf[recps].content.mask[i++] = CPU_TO_LE16(0xFFFF);
 			ice_set_bit(entry->rid, rm->r_bitmap);
-- 
2.38.1

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2022-11-11 12:35:05.537618698 +0100
+++ 0021-net-ice-base-fix-array-overflow-in-add-switch-recipe.patch	2022-11-11 12:35:04.757191974 +0100
@@ -1 +1 @@
-From 289b2846c187aa061c13d6a499d0321f581390a5 Mon Sep 17 00:00:00 2001
+From 542536e5f11a7a81f0291a4859a01cf1aadbe58f Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 289b2846c187aa061c13d6a499d0321f581390a5 ]
+
@@ -15 +16,0 @@
-Cc: stable at dpdk.org
@@ -25 +26 @@
-index e59d191c46..b8e733f539 100644
+index 6899502a93..5fe6e9ea69 100644
@@ -28 +29 @@
-@@ -7315,7 +7315,6 @@ ice_add_sw_recipe(struct ice_hw *hw, struct ice_sw_recipe *rm,
+@@ -5199,7 +5199,6 @@ ice_add_sw_recipe(struct ice_hw *hw, struct ice_sw_recipe *rm,


More information about the stable mailing list