[dpdk-dev] [PATCH] mk: disable warning with gcc 9 on Fedora 30

David Marchand david.marchand at redhat.com
Thu May 2 15:30:51 CEST 2019


On Thu, May 2, 2019 at 3:26 PM Bruce Richardson <bruce.richardson at intel.com>
wrote:

> On Thu, May 02, 2019 at 12:07:17PM +0200, David Marchand wrote:
> > On Thu, May 2, 2019 at 11:33 AM Reshma Pattan <reshma.pattan at intel.com>
> > wrote:
> >
> > > gcc 9 on Fedora 30 gives an error
> > > "taking address of packed member may result in an
> > > unaligned pointer value" warnings.
> > >
> > > For clang builds this warning is already disabled,
> > > so disable "-Waddress-of-packed-member" for gcc builds
> > > also.
> > >
> > > Snippet of build error:
> > > ...lib/librte_eal/linux/eal/eal_memalloc.c: In function
> ‘alloc_seg_walk’:
> > > ...lib/librte_eal/linux/eal/eal_memalloc.c:768:12: error: taking
> address
> > > of packed member of ‘struct rte_mem_config’ may result in an unaligned
> > > pointer value [-Werror=address-of-packed-member]
> > >   768 |  cur_msl = &mcfg->memsegs[msl_idx];
> > >       |            ^~~~~~~~~~~~~~~~~~~~~~~
> > >
> > > Signed-off-by: Reshma Pattan <reshma.pattan at intel.com>
> > > ---
> > >  mk/toolchain/gcc/rte.vars.mk | 3 +++
> > >  1 file changed, 3 insertions(+)
> > >
> > > diff --git a/mk/toolchain/gcc/rte.vars.mk b/mk/toolchain/gcc/
> rte.vars.mk
> > > index d8b99faf6..b852fcfd7 100644
> > > --- a/mk/toolchain/gcc/rte.vars.mk
> > > +++ b/mk/toolchain/gcc/rte.vars.mk
> > > @@ -87,5 +87,8 @@ WERROR_FLAGS += -Wimplicit-fallthrough=2
> > >  WERROR_FLAGS += -Wno-format-truncation
> > >  endif
> > >
> > > +# disable packed member unalign warnings
> > > +WERROR_FLAGS += -Wno-address-of-packed-member
> > > +
> > >  export CC AS AR LD OBJCOPY OBJDUMP STRIP READELF
> > >  export TOOLCHAIN_CFLAGS TOOLCHAIN_LDFLAGS TOOLCHAIN_ASFLAGS
> > > --
> > > 2.21.0
> > >
> > >
> > Not the best approach to me...
> >
> Agreed, but this fix does seem reasonable since we already disable this
> warning
> for clang.
>
> > Let me install a fedora 30 and have a look.
> Hopefully you can come up with a better fix, but I think we need something
> soon for 19.05, so this patch may be needed as a stop-gap fix.
>

Hiding this warning, we will never fix the places that could be fixed (and
I found some where the packed attribute makes no sense to me).
I'd prefer at least a -Wno-error=address-of-packed-member



-- 
David Marchand


More information about the dev mailing list