DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH] net/i40e: fix gcc 11 build warning on POWER architecture
@ 2021-10-14 19:05 David Christensen
  2021-11-05  0:50 ` Zhang, Qi Z
  0 siblings, 1 reply; 3+ messages in thread
From: David Christensen @ 2021-10-14 19:05 UTC (permalink / raw)
  To: dev, beilei.xing; +Cc: stable, David Christensen

Building DPDK with a gcc 11 based compiler such as the IBM Advanced
Toolchain 15 (1) generates a stringop-overflow warning when using -O3
optimization (DPDK default for production releases):

writing 1 byte into a region of size 0 [-Wstringop-overflow=]

The issue has been reported to the gcc project (2) but can be resolved
by preventing the compiler from unrolling the loop as part of the -O3
optimization.

(1) https://www.ibm.com/support/pages/advance-toolchain-linux-power
(2) https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102316

Bugzilla ID: 743

Signed-off-by: David Christensen <drc@linux.vnet.ibm.com>
---
 drivers/net/i40e/i40e_flow.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/net/i40e/i40e_flow.c b/drivers/net/i40e/i40e_flow.c
index e41a84f1d7..17ab7ad9b9 100644
--- a/drivers/net/i40e/i40e_flow.c
+++ b/drivers/net/i40e/i40e_flow.c
@@ -3047,6 +3047,10 @@ i40e_flow_parse_fdir_pattern(struct rte_eth_dev *dev,
 				return -rte_errno;
 			}
 
+#if defined(RTE_ARCH_PPC_64) && defined(RTE_TOOLCHAIN_GCC) && \
+(GCC_VERSION >= 110000)
+#pragma GCC unroll 1
+#endif
 			for (i = 0; i < raw_spec->length; i++) {
 				j = i + next_dst_off;
 				filter->input.flow_ext.flexbytes[j] =
-- 
2.27.0


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-11-09 22:46 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-10-14 19:05 [dpdk-dev] [PATCH] net/i40e: fix gcc 11 build warning on POWER architecture David Christensen
2021-11-05  0:50 ` Zhang, Qi Z
2021-11-09 22:46   ` David Christensen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).