> -----Original Message----- > From: Ferruh Yigit <ferruh.yi...@intel.com> > Sent: Wednesday, May 6, 2020 6:14 PM > To: Ruifeng Wang <ruifeng.w...@arm.com>; wenzhuo...@intel.com; > konstantin.anan...@intel.com; jer...@marvell.com; > vikto...@rehivetech.com > Cc: dev@dpdk.org; Gavin Hu <gavin...@arm.com>; Honnappa Nagarahalli > <honnappa.nagaraha...@arm.com>; juraj.lin...@pantheon.tech; nd > <n...@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.yi...@intel.com> > >> Sent: Friday, May 1, 2020 11:07 PM > >> To: Ruifeng Wang <ruifeng.w...@arm.com>; wenzhuo...@intel.com; > >> konstantin.anan...@intel.com; jer...@marvell.com; > >> vikto...@rehivetech.com > >> Cc: dev@dpdk.org; Gavin Hu <gavin...@arm.com>; Honnappa > Nagarahalli > >> <honnappa.nagaraha...@arm.com>; juraj.lin...@pantheon.tech; nd > >> <n...@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; > >> | ^