[dpdk-dev] [PATCH v2] testpmd: fix build on FreeBSD

Bruce Richardson bruce.richardson at intel.com
Fri Mar 25 13:10:40 CET 2016


On Wed, Mar 23, 2016 at 04:17:12PM +0100, Thomas Monjalon wrote:
> 2016-03-23 02:17, Wu, Jingjing:
> > From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Marvin Liu
> > > Build log:
> > > /root/dpdk/app/test-pmd/cmdline.c:6687:45: error: no member named
> > > 's6_addr32' in 'struct in6_addr'
> > >     rte_be_to_cpu_32(res->ip_value.addr.ipv6.s6_addr32[i]);
> > > 
> > > This is caused by macro "s6_addr32" not defined on FreeBSD and testpmd
> > > swap big endian parameter to host endian. Move the swap action to i40e
> > > ethdev will fix this issue.
> > > 
> > > Fixes: 7b1312891b69 ("ethdev: add IP in GRE tunnel")
> > > 
> > > Signed-off-by: Marvin Liu <yong.liu at intel.com>
> > Acked-by: Jingjing Wu <jingjing.wu at intel.com>
> 
> It looks good but something is missing to decide that it is the right fix:
> the API do not state wether these fields (and others) are big endian or
> something else.
> 
> Please Jingjing, fix the ethdev comments for these fields and others
> rte_eth_ipv*_flow in a separate patch.

+1 to the more info because the endianness is confusing here. However, this look
a better fix than the previous one (v1 patch).

Thomas, can this be merged for RC2 to fix the BSD build, which should be a 
priority? Even if it's not the full solution, I think we need to at least get
the code building on BSD.

Thanks,
/Bruce


More information about the dev mailing list