From: "Morten Brørup" <mb@smartsharesystems.com>
To: "Stephen Hemminger" <stephen@networkplumber.org>
Cc: <dev@dpdk.org>, "Thomas Monjalon" <thomas@monjalon.net>,
"Konstantin Ananyev" <konstantin.ananyev@huawei.com>,
"Andrew Rybchenko" <andrew.rybchenko@oktetlabs.ru>,
"Bruce Richardson" <bruce.richardson@intel.com>,
"Ali Alnubani" <alialnu@nvidia.com>
Subject: RE: [PATCH] stack: fix pile GCC memcpy warnings
Date: Tue, 20 Oct 2026 17:27:02 +0200 [thread overview]
Message-ID: <98CBD80474FA8B44BF855DF32C47DC35F65ACE@smartserver.smartshare.dk> (raw)
In-Reply-To: <20261020073430.04ce3bb4@phoenix.local>
> From: Stephen Hemminger <stephen@networkplumber.org>
> Date: Tue, 20 Oct 2026 07:26:42 -0700
> Subject: [PATCH] build: disable GCC string op warnings when unoptimized
>
> Without optimization GCC's -Wstringop-overflow and -Wstringop-overread
> are flow-insensitive: they check a memcpy() against the object size
> even on paths that are dead for the inlined arguments. This breaks
> debug builds of app/test with -Werror on lib/stack/rte_stack_pile.h,
> and has required local pragma workarounds elsewhere.
>
> Disable both warnings when optimization is 0. They stay enabled for
> optimized builds, where the analysis is flow-sensitive.
>
> Bugzilla ID: 2061
>
> Reported-by: Ali Alnubani <alialnu@nvidia.com>
> Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
> ---
> config/meson.build | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/config/meson.build b/config/meson.build
> index 745097e8aa..ac90b9d4fa 100644
> --- a/config/meson.build
> +++ b/config/meson.build
> @@ -378,6 +378,12 @@ if cc.has_argument('-Wno-comma')
> no_comma_cflag = '-Wno-comma'
> endif
>
> +# GCC's string/memory access warnings are flow-insensitive without
> +# optimization and produce false positives on dead paths of inlined
> code.
> +if get_option('optimization') == '0' and cc.get_id() == 'gcc'
> + global_cflags += ['-Wno-stringop-overflow', '-Wno-stringop-
> overread']
> ++endif
> +
> foreach arg: global_cflags
> if cc.has_argument(arg)
> add_project_arguments(arg, language: 'c')
> --
> 2.53.0
Also '-Warray-bounds'?
Consider making it a series, and also remove existing overflow/overread pragmas in the code (if viable):
lib/ring/rte_ring_elem_pvt.h
lib/eal/ppc/include/rte_memcpy.h
With or without suggested changes,
Acked-by: Morten Brørup <mb@smartsharesystems.com>
prev parent reply other threads:[~2026-10-20 15:27 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-20 8:49 [PATCH] stack: fix pile GCC memcpy warnings Morten Brørup
2026-10-20 9:18 ` Bruce Richardson
2026-10-20 9:59 ` Morten Brørup
2026-10-20 10:18 ` Ali Alnubani
2026-10-20 14:23 ` Stephen Hemminger
2026-10-20 15:16 ` Morten Brørup
2026-10-20 15:39 ` Morten Brørup
2026-10-20 14:34 ` Stephen Hemminger
2026-10-20 15:27 ` Morten Brørup [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=98CBD80474FA8B44BF855DF32C47DC35F65ACE@smartserver.smartshare.dk \
--to=mb@smartsharesystems.com \
--cc=alialnu@nvidia.com \
--cc=andrew.rybchenko@oktetlabs.ru \
--cc=bruce.richardson@intel.com \
--cc=dev@dpdk.org \
--cc=konstantin.ananyev@huawei.com \
--cc=stephen@networkplumber.org \
--cc=thomas@monjalon.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.