[dpdk-dev] [PATCH 0/3] aarch32 compilation

Ruifeng Wang Ruifeng.Wang at arm.com
Wed May 6 15:54:26 CEST 2020


> -----Original Message-----
> From: Ferruh Yigit <ferruh.yigit at intel.com>
> Sent: Wednesday, May 6, 2020 6:14 PM
> To: Ruifeng Wang <Ruifeng.Wang at arm.com>; wenzhuo.lu at intel.com;
> konstantin.ananyev at intel.com; jerinj at marvell.com;
> viktorin at rehivetech.com
> Cc: dev at dpdk.org; Gavin Hu <Gavin.Hu at arm.com>; Honnappa Nagarahalli
> <Honnappa.Nagarahalli at arm.com>; juraj.linkes at pantheon.tech; nd
> <nd at arm.com>
> Subject: Re: [dpdk-dev] [PATCH 0/3] aarch32 compilation
> 
> On 5/6/2020 9:09 AM, Ruifeng Wang wrote:
> >
> >> -----Original Message-----
> >> From: Ferruh Yigit <ferruh.yigit at intel.com>
> >> Sent: Friday, May 1, 2020 11:07 PM
> >> To: Ruifeng Wang <Ruifeng.Wang at arm.com>; wenzhuo.lu at intel.com;
> >> konstantin.ananyev at intel.com; jerinj at marvell.com;
> >> viktorin at rehivetech.com
> >> Cc: dev at dpdk.org; Gavin Hu <Gavin.Hu at arm.com>; Honnappa
> Nagarahalli
> >> <Honnappa.Nagarahalli at arm.com>; juraj.linkes at pantheon.tech; nd
> >> <nd at arm.com>
> >> Subject: Re: [dpdk-dev] [PATCH 0/3] aarch32 compilation
> >>
> >> On 4/24/2020 7:50 AM, Ruifeng Wang wrote:
> >>> Build aarch32 binary on aarch64 platform hit issues with l3fwd [1]
> >>> and ixgbe PMD [2]. This patch set is to fix these.
> >>>
> >>> When building with make, please refer to guide:
> >>> http://patches.dpdk.org/patch/62820/
> >>>
> >>> When building with meson, requires series:
> >>> http://patches.dpdk.org/cover/68534/
> >>>
> >>> [1] https://mails.dpdk.org/archives/dev/2020-April/162673.html
> >>> [2] https://mails.dpdk.org/archives/dev/2020-April/163846.html
> >>>
> >>>
> >>> Ruifeng Wang (3):
> >>>   arch/arm: add vcopyq intrinsic for aarch32
> >>>   net/ixgbe: add support for aarch32
> >>>   net/ixgbe: fix include of vector header file
> >>>
> >>
> >> Not directly related to this patch but since you are fixing aarch32
> >> compilation, I am getting following -Wcast-align warnings [1] while cross
> building with:
> >> arm-linux-gcc.br_real (Buildroot 2020.02-00011-g7ea8a52) 9.3.0
> >>
> > I got the same warnings with arm-linux-gnueabihf-gcc. The warnings
> spread in many different files.
> > It is because armv7a/aarch32 puts strict align requirement.
> > We can first make it compile. And clean up such warnings in next step?
> 
> Sure.
> 
> I thought it would break the build, aren't we using -Werror for the target?
Currently, "RTE_DEVEL_BUILD=n" is needed for armv7 build.
http://patches.dpdk.org/patch/62820/

> 
> >
> >>
> >> [1]
> >> .../lib/librte_eal/linux/eal_vfio_mp_sync.c: In function ‘vfio_mp_primary’:
> >> .../lib/librte_eal/linux/eal_vfio_mp_sync.c:31:28: warning: cast
> >> increases required alignment of target type [-Wcast-align]
> >>    31 |  struct vfio_mp_param *r = (struct vfio_mp_param *)reply.param;
> >>       |                            ^
> >> .../lib/librte_eal/linux/eal_vfio_mp_sync.c:33:3: warning: cast
> >> increases required alignment of target type [-Wcast-align]
> >>    33 |   (const struct vfio_mp_param *)msg->param;
> >>       |   ^
> >> .../lib/librte_eal/linux/eal_vfio.c: In function ‘vfio_open_group_fd’:
> >> .../lib/librte_eal/linux/eal_vfio.c:269:28: warning: cast increases
> >> required alignment of target type [-Wcast-align]
> >>   269 |  struct vfio_mp_param *p = (struct vfio_mp_param
> *)mp_req.param;
> >>       |                            ^
> >> .../lib/librte_eal/linux/eal_vfio.c:316:7: warning: cast increases
> >> required alignment of target type [-Wcast-align]
> >>   316 |   p = (struct vfio_mp_param *)mp_rep->param;
> >>       |       ^
> >>   CC eal_common_class.o
> >> .../lib/librte_eal/linux/eal_vfio.c: In function
> ‘vfio_sync_default_container’:
> >> .../lib/librte_eal/linux/eal_vfio.c:627:28: warning: cast increases
> >> required alignment of target type [-Wcast-align]
> >>   627 |  struct vfio_mp_param *p = (struct vfio_mp_param
> *)mp_req.param;
> >>       |                            ^
> >> .../lib/librte_eal/linux/eal_vfio.c:652:7: warning: cast increases
> >> required alignment of target type [-Wcast-align]
> >>   652 |   p = (struct vfio_mp_param *)mp_rep->param;
> >>       |       ^
> >> .../lib/librte_eal/linux/eal_vfio.c: In function
> ‘vfio_get_default_container_fd’:
> >> .../lib/librte_eal/linux/eal_vfio.c:1094:28: warning: cast increases
> >> required alignment of target type [-Wcast-align]
> >>  1094 |  struct vfio_mp_param *p = (struct vfio_mp_param
> *)mp_req.param;
> >>       |                            ^
> >> .../lib/librte_eal/linux/eal_vfio.c:1116:7: warning: cast increases
> >> required alignment of target type [-Wcast-align]
> >>  1116 |   p = (struct vfio_mp_param *)mp_rep->param;
> >>       |       ^
> >>   CC eal_common_bus.o
> >> .../lib/librte_eal/linux/eal_vfio.c: In function ‘rte_vfio_get_container_fd’:
> >> .../lib/librte_eal/linux/eal_vfio.c:1202:28: warning: cast increases
> >> required alignment of target type [-Wcast-align]
> >>  1202 |  struct vfio_mp_param *p = (struct vfio_mp_param
> *)mp_req.param;
> >>       |                            ^
> >> .../lib/librte_eal/linux/eal_vfio.c:1248:7: warning: cast increases
> >> required alignment of target type [-Wcast-align]
> >>  1248 |   p = (struct vfio_mp_param *)mp_rep->param;
> >>       |       ^



More information about the dev mailing list