On Fri, May 15, 2020 at 10:28 AM David Marchand <david.march...@redhat.com> wrote: > > On Thu, May 14, 2020 at 3:19 PM Kevin Traynor <ktray...@redhat.com> wrote: > > > > gcc 10 issues warnings about the use of rearm_data marker > > from struct rte_mbuf. > > > > e.g. > > ../drivers/net/enic/enic_rxtx_vec_avx2.c: In function ‘rx_one’: > > ../drivers/net/enic/enic_rxtx_vec_avx2.c:21:2: > > warning: > > array subscript 0 is outside the bounds of an interior zero-length array > > ‘RTE_MARKER64’ {aka ‘long unsigned int[0]’} [-Wzero-length-bounds] > > 21 | *(uint64_t *)&mb->rearm_data = enic->mbuf_initializer; > > | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ > > In file included from ../lib/librte_mbuf/rte_mbuf.h:45, > > from ../drivers/net/enic/enic_rxtx_vec_avx2.c:6: > > ../lib/librte_mbuf/rte_mbuf_core.h:484:15: > > note: while referencing ‘rearm_data’ > > 484 | RTE_MARKER64 rearm_data; > > | > > > > Disable this warning for gcc 10 in order to allow v20.05 to build > > without changes to struct rte_mbuf. > > > > Bugzilla ID: 396 > > Cc: sta...@dpdk.org > > > > Signed-off-by: Kevin Traynor <ktray...@redhat.com> > > > > --- > > Sending as per discussion at this mornings release meeting: > > http://inbox.dpdk.org/dev/2980eb50-124c-9da8-9927-0678081b6...@intel.com/ > > > > Reference to Gavin's patch: > > http://inbox.dpdk.org/dev/cajfav8yl2gvejttxolk6o0exhi4cpzmqcorsfn2wcde_ju1...@mail.gmail.com/#t > > --- > > config/meson.build | 4 ++++ > > mk/toolchain/gcc/rte.vars.mk | 5 +++++ > > 2 files changed, 9 insertions(+) > > > > diff --git a/config/meson.build b/config/meson.build > > index a1c38c053..43ab11310 100644 > > --- a/config/meson.build > > +++ b/config/meson.build > > @@ -209,4 +209,8 @@ warning_flags = [ > > '-Wno-missing-field-initializers' > > ] > > +if cc.get_id() == 'gcc' and cc.version().version_compare('>=10.0') > > +# FIXME: Bugzilla 396 > > + warning_flags += '-Wno-zero-length-bounds' > > +endif > > if not dpdk_conf.get('RTE_ARCH_64') > > # for 32-bit, don't warn about casting a 32-bit pointer to 64-bit int - > > it's fine!! > > diff --git a/mk/toolchain/gcc/rte.vars.mk b/mk/toolchain/gcc/rte.vars.mk > > index f19305e49..928f0e083 100644 > > --- a/mk/toolchain/gcc/rte.vars.mk > > +++ b/mk/toolchain/gcc/rte.vars.mk > > @@ -82,4 +82,9 @@ WERROR_FLAGS += -Wno-uninitialized > > endif > > > > +ifeq ($(shell test $(GCC_VERSION) -ge 100 && echo 1), 1) > > +# FIXME: Bugzilla 396 > > +WERROR_FLAGS += -Wno-zero-length-bounds > > +endif > > + > > HOST_WERROR_FLAGS := $(WERROR_FLAGS) > > > > -- > > 2.21.3 > > > > Reviewed-by: David Marchand <david.march...@redhat.com>
No objection on this patch, so I'll proceed and merge it for rc3. -- David Marchand