[dpdk-stable] patch 'net/bnx2x: fix build with GCC 11' has been queued to stable release 19.11.9

Christian Ehrhardt christian.ehrhardt at canonical.com
Thu Jun 10 14:06:12 CEST 2021


Hi,

FYI, your patch has been queued to stable release 19.11.9

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

Thanks.

Christian Ehrhardt <christian.ehrhardt at canonical.com>

---
>From aecd308c092378ae627a795f9e8c3e65595d4384 Mon Sep 17 00:00:00 2001
From: Ferruh Yigit <ferruh.yigit at intel.com>
Date: Tue, 11 May 2021 14:14:32 +0100
Subject: [PATCH] net/bnx2x: fix build with GCC 11
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

[ upstream commit b3c740e03751215ab01841975b8f5764023f953b ]

Reproduced with '--buildtype=debugoptimized' config,
compiler version: gcc (GCC) 12.0.0 20210509 (experimental)

Build error:
In file included from ../drivers/net/bnx2x/bnx2x_rxtx.c:8:
../drivers/net/bnx2x/bnx2x_rxtx.c: In function ‘bnx2x_upd_rx_prod_fast’:
../drivers/net/bnx2x/bnx2x.h:1528:35:
    warning: ‘rx_prods’ is used uninitialized [-Wuninitialized]
 #define REG_WR32(sc, offset, val) bnx2x_reg_write32(sc, (offset), val)
                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../drivers/net/bnx2x/bnx2x.h:1531:33:
	note: in expansion of macro ‘REG_WR32’
 1531 | #define REG_WR(sc, offset, val) REG_WR32(sc, offset, val)
      |                                 ^~~~~~~~
../drivers/net/bnx2x/bnx2x_rxtx.c:331:9:
	note: in expansion of macro ‘REG_WR’
  331 |         REG_WR(sc, fp->ustorm_rx_prods_offset, val[0]);
      |         ^~~~~~
../drivers/net/bnx2x/bnx2x_rxtx.c:324:40: note: ‘rx_prods’ declared here
  324 |         struct ustorm_eth_rx_producers rx_prods = { 0 };
      |                                        ^~~~~~~~

REG_WR32 requires 'uint32_t', use union instead of cast to 'uint32_t'.

Bugzilla ID: 692
Fixes: 38dff79ba736 ("net/bnx2x: update HSI")

Signed-off-by: Ferruh Yigit <ferruh.yigit at intel.com>
Acked-by: Kevin Traynor <ktraynor at redhat.com>
---
 drivers/net/bnx2x/bnx2x_rxtx.c | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/drivers/net/bnx2x/bnx2x_rxtx.c b/drivers/net/bnx2x/bnx2x_rxtx.c
index e201b68db8..db4654dd51 100644
--- a/drivers/net/bnx2x/bnx2x_rxtx.c
+++ b/drivers/net/bnx2x/bnx2x_rxtx.c
@@ -321,14 +321,15 @@ static inline void
 bnx2x_upd_rx_prod_fast(struct bnx2x_softc *sc, struct bnx2x_fastpath *fp,
 		uint16_t rx_bd_prod, uint16_t rx_cq_prod)
 {
-	struct ustorm_eth_rx_producers rx_prods = { 0 };
-	uint32_t *val = NULL;
+	union {
+		struct ustorm_eth_rx_producers rx_prods;
+		uint32_t val;
+	} val = { {0} };
 
-	rx_prods.bd_prod  = rx_bd_prod;
-	rx_prods.cqe_prod = rx_cq_prod;
+	val.rx_prods.bd_prod  = rx_bd_prod;
+	val.rx_prods.cqe_prod = rx_cq_prod;
 
-	val = (uint32_t *)&rx_prods;
-	REG_WR(sc, fp->ustorm_rx_prods_offset, val[0]);
+	REG_WR(sc, fp->ustorm_rx_prods_offset, val.val);
 }
 
 static uint16_t
-- 
2.31.1

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2021-06-10 14:04:59.216615114 +0200
+++ 0024-net-bnx2x-fix-build-with-GCC-11.patch	2021-06-10 14:04:58.050024525 +0200
@@ -1 +1 @@
-From b3c740e03751215ab01841975b8f5764023f953b Mon Sep 17 00:00:00 2001
+From aecd308c092378ae627a795f9e8c3e65595d4384 Mon Sep 17 00:00:00 2001
@@ -8,0 +9,2 @@
+[ upstream commit b3c740e03751215ab01841975b8f5764023f953b ]
+
@@ -35 +36,0 @@
-Cc: stable at dpdk.org
@@ -44 +45 @@
-index 57e2ce5045..2b17602290 100644
+index e201b68db8..db4654dd51 100644


More information about the stable mailing list