[dpdk-dev] [PATCH] ixgbe: fix compile error with gcc4.4 (used RHEL 6)

Richardson, Bruce bruce.richardson at intel.com
Thu Sep 18 14:35:21 CEST 2014


> -----Original Message-----
> From: Neil Horman [mailto:nhorman at tuxdriver.com]
> Sent: Thursday, September 18, 2014 1:25 PM
> To: Thomas Monjalon
> Cc: Richardson, Bruce; dev at dpdk.org
> Subject: Re: [dpdk-dev] [PATCH] ixgbe: fix compile error with gcc4.4 (used RHEL
> 6)
> 
> On Thu, Sep 18, 2014 at 01:09:16PM +0200, Thomas Monjalon wrote:
> > > The refcnt field is contained within an anonymous union within the mbuf
> > > data structure, and gcc 4.4 gives an error about an unknown field unless
> > > the initialiser for the field is contained within extra braces.
> > >
> > > Signed-off-by: Bruce Richardson <bruce.richardson at intel.com>
> >
> > Acked-by: Thomas Monjalon <thomas.monjalon at 6wind.com>
> >
> > Thanks Bruce, it is now applied.
> 
> Hang on here, we use anonymous unions all the time in RHEL6, and make
> assignments to them frequently, and the compiler doesn't complain (see the
> dropcount variable in sk_buff for an example).  Not saying that this is a big
> deal, but can you explain a little more about what you're seeing when this error
> occurs, before we just paper over it?
> 

Originally reported on RHEL6 as a build failure. When I use gcc4.4 on Fedora 20, I get the following without this change:

  CC ixgbe_rxtx_vec.o
== Build lib/librte_table
/home/bruce/dpdk.org/lib/librte_pmd_ixgbe/ixgbe_rxtx_vec.c: In function 'ixgbe_rxq_vec_setup':
/home/bruce/dpdk.org/lib/librte_pmd_ixgbe/ixgbe_rxtx_vec.c:726: error: unknown field 'refcnt' specified in initializer
compilation terminated due to -Wfatal-errors.
make[5]: *** [ixgbe_rxtx_vec.o] Error 1
make[4]: *** [librte_pmd_ixgbe] Error 2
make[4]: *** Waiting for unfinished jobs....
make[3]: *** [lib] Error 2
make[2]: *** [all] Error 2
make[1]: *** [x86_64-native-linuxapp-gcc_install] Error 2
make: *** [install] Error 2

Regards,
/Bruce


More information about the dev mailing list