patch 'net/ice/base: fix build with GCC 12' has been queued to stable release 20.11.6

Xueming Li xuemingl at nvidia.com
Wed Jul 20 10:20:59 CEST 2022


Hi,

FYI, your patch has been queued to stable release 20.11.6

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/22/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/steevenlee/dpdk

This queued commit can be viewed at:
https://github.com/steevenlee/dpdk/commit/d26e0087571814f789ccd35ff22a94ca01305c8b

Thanks.

Xueming Li <xuemingl at nvidia.com>

---
>From d26e0087571814f789ccd35ff22a94ca01305c8b Mon Sep 17 00:00:00 2001
From: Wenxuan Wu <wenxuanx.wu at intel.com>
Date: Thu, 23 Jun 2022 17:01:05 +0800
Subject: [PATCH] net/ice/base: fix build with GCC 12
Cc: Xueming Li <xuemingl at nvidia.com>

[ upstream commit 3e87e12dc8bcb1d06dafcb302b056fee51deb090 ]

GCC 12 with -O2 flag would raise the following warning:
../drivers/net/ice/base/ice_switch.c:7220:61: error: writing 1 byte into a
region of size 0 [-Werror=stringop-overflow=]
 7220 |           buf[recps].content.lkup_indx[i + 1] = entry->fv_idx[i];
      |           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~

This patch changed the type of fv_idx in struct ice_recp_grp_entry to
align with its callers which are also u8 type.

Fixes: 04b8ec1ea807 ("net/ice/base: add protocol structures and defines")

Signed-off-by: Wenxuan Wu <wenxuanx.wu at intel.com>
Acked-by: Qi Zhang <qi.z.zhang at intel.com>
---
 drivers/net/ice/base/ice_flex_pipe.c     | 2 +-
 drivers/net/ice/base/ice_flex_pipe.h     | 2 +-
 drivers/net/ice/base/ice_protocol_type.h | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/net/ice/base/ice_flex_pipe.c b/drivers/net/ice/base/ice_flex_pipe.c
index 67afb7bbba..ed3363c869 100644
--- a/drivers/net/ice/base/ice_flex_pipe.c
+++ b/drivers/net/ice/base/ice_flex_pipe.c
@@ -2252,7 +2252,7 @@ ice_destroy_tunnel_end:
  * @off: variable to receive the protocol offset
  */
 enum ice_status
-ice_find_prot_off(struct ice_hw *hw, enum ice_block blk, u8 prof, u16 fv_idx,
+ice_find_prot_off(struct ice_hw *hw, enum ice_block blk, u8 prof, u8 fv_idx,
 		  u8 *prot, u16 *off)
 {
 	struct ice_fv_word *fv_ext;
diff --git a/drivers/net/ice/base/ice_flex_pipe.h b/drivers/net/ice/base/ice_flex_pipe.h
index 214c7a2837..9ae3c82b40 100644
--- a/drivers/net/ice/base/ice_flex_pipe.h
+++ b/drivers/net/ice/base/ice_flex_pipe.h
@@ -25,7 +25,7 @@ enum ice_status
 ice_acquire_change_lock(struct ice_hw *hw, enum ice_aq_res_access_type access);
 void ice_release_change_lock(struct ice_hw *hw);
 enum ice_status
-ice_find_prot_off(struct ice_hw *hw, enum ice_block blk, u8 prof, u16 fv_idx,
+ice_find_prot_off(struct ice_hw *hw, enum ice_block blk, u8 prof, u8 fv_idx,
 		  u8 *prot, u16 *off);
 enum ice_status
 ice_find_label_value(struct ice_seg *ice_seg, char const *name, u32 type,
diff --git a/drivers/net/ice/base/ice_protocol_type.h b/drivers/net/ice/base/ice_protocol_type.h
index 023d661341..8e0557b212 100644
--- a/drivers/net/ice/base/ice_protocol_type.h
+++ b/drivers/net/ice/base/ice_protocol_type.h
@@ -394,7 +394,7 @@ struct ice_recp_grp_entry {
 #define ICE_INVAL_CHAIN_IND 0xFF
 	u16 rid;
 	u8 chain_idx;
-	u16 fv_idx[ICE_NUM_WORDS_RECIPE];
+	u8 fv_idx[ICE_NUM_WORDS_RECIPE];
 	u16 fv_mask[ICE_NUM_WORDS_RECIPE];
 	struct ice_pref_recipe_group r_group;
 };
-- 
2.35.1

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2022-07-20 15:01:00.205600723 +0800
+++ 0030-net-ice-base-fix-build-with-GCC-12.patch	2022-07-20 15:00:58.724333808 +0800
@@ -1 +1 @@
-From 3e87e12dc8bcb1d06dafcb302b056fee51deb090 Mon Sep 17 00:00:00 2001
+From d26e0087571814f789ccd35ff22a94ca01305c8b Mon Sep 17 00:00:00 2001
@@ -4,0 +5,3 @@
+Cc: Xueming Li <xuemingl at nvidia.com>
+
+[ upstream commit 3e87e12dc8bcb1d06dafcb302b056fee51deb090 ]
@@ -16 +18,0 @@
-Cc: stable at dpdk.org
@@ -24,2 +26 @@
- drivers/net/ice/base/ice_switch.h        | 2 +-
- 4 files changed, 4 insertions(+), 4 deletions(-)
+ 3 files changed, 3 insertions(+), 3 deletions(-)
@@ -28 +29 @@
-index f6a29f87c5..3918169001 100644
+index 67afb7bbba..ed3363c869 100644
@@ -31 +32 @@
-@@ -2564,7 +2564,7 @@ ice_destroy_tunnel_end:
+@@ -2252,7 +2252,7 @@ ice_destroy_tunnel_end:
@@ -41 +42 @@
-index 23ba45564a..ab897de4f3 100644
+index 214c7a2837..9ae3c82b40 100644
@@ -54 +55 @@
-index 8fb95a8a8d..74107de988 100644
+index 023d661341..8e0557b212 100644
@@ -57 +58 @@
-@@ -424,7 +424,7 @@ struct ice_recp_grp_entry {
+@@ -394,7 +394,7 @@ struct ice_recp_grp_entry {
@@ -66,13 +66,0 @@
-diff --git a/drivers/net/ice/base/ice_switch.h b/drivers/net/ice/base/ice_switch.h
-index a2b3c80107..c67cd09d21 100644
---- a/drivers/net/ice/base/ice_switch.h
-+++ b/drivers/net/ice/base/ice_switch.h
-@@ -203,7 +203,7 @@ struct ice_fltr_info {
- 
- struct ice_update_recipe_lkup_idx_params {
- 	u16 rid;
--	u16 fv_idx;
-+	u8 fv_idx;
- 	bool ignore_valid;
- 	u16 mask;
- 	bool mask_valid;


More information about the stable mailing list