[dpdk-stable] [PATCH v2 2/2] examples/ipsec-gw: fix gcc 10 maybe-uninitialized warning

Kevin Traynor ktraynor at redhat.com
Wed Mar 11 12:33:00 CET 2020


gcc 10.0.1 reports:

../examples/ipsec-secgw/ipsec_process.c: In function ‘ipsec_process’:
../examples/ipsec-secgw/ipsec_process.c:132:34:
error: ‘grp.m’ may be used uninitialized in this function [-Werror=maybe-uninitialized]
  132 |    grp[n].cnt = pkts + i - grp[n].m;
      |                            ~~~~~~^~

This is a correct warning for the initial execution of the statement.
However, it is the design of the loop that grp[0].cnt will later be
written with the correct value using an initialized grp[0].m before it
is used.

In order to remove the warning, initialize grp[0].m for the initial and
unused calculation of grp[0].cnt.

Fixes: 3e5f4625dc17 ("examples/ipsec-secgw: make data-path to use IPsec library")
Cc: stable at dpdk.org

Suggested-by: Konstantin Ananyev <konstantin.ananyev at intel.com>
Signed-off-by: Kevin Traynor <ktraynor at redhat.com>
---
v2: just initialize grp[0].m instead of the full array.

note, commit log violates line length but I didn't want to split warning msg.

Cc: konstantin.ananyev at intel.com
Cc: Radu Nicolau <radu.nicolau at intel.com>
Cc: Akhil Goyal <akhil.goyal at nxp.com>
---
 examples/ipsec-secgw/ipsec_process.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/examples/ipsec-secgw/ipsec_process.c b/examples/ipsec-secgw/ipsec_process.c
index bb2f2b82d..6d3a3c9a1 100644
--- a/examples/ipsec-secgw/ipsec_process.c
+++ b/examples/ipsec-secgw/ipsec_process.c
@@ -127,4 +127,5 @@ sa_group(void *sa_ptr[], struct rte_mbuf *pkts[],
 
 	sa = nosa;
+	grp[0].m = pkts;
 	for (i = 0, n = 0; i != num; i++) {
 
-- 
2.21.1



More information about the stable mailing list