Hi Chetan, > On 16 Apr 2021, at 07:04, chetan bhasin <chetan.bhasin...@gmail.com> wrote: > > Hi Mohammed , > > After applying the patch you have mentioned , I am no longer facing the > compilation issue. > > Thanks for your support. > > With Static RDMA linking , do we need to do anything extra while bringing our > application on the server having Mellanox Nic ?
No we don’t, it should work out of the box! > > Thanks & Regards, > Chetan Regards Mohammed > > On Wed, Apr 14, 2021 at 8:33 PM chetan bhasin via lists.fd.io > <http://lists.fd.io/> <chetan.bhasin017=gmail....@lists.fd.io > <mailto:gmail....@lists.fd.io>> wrote: > Thanks a lot Mohammed! > > Let me try with the rdma-core and patch mentioned by you and > > Thanks, > Chetan > > On Wed, Apr 14, 2021 at 6:20 PM Mohammed Hawari <moham...@hawari.fr > <mailto:moham...@hawari.fr>> wrote: > Hi Chetan > > You are building DPDK with Mellanox support relying on dlopen and the glue > library which is fine. The default approach implemented in the VPP build > system consists of statically linking DPDK with the the libraries provided by > rdma-core (as it’s also built by the VPP build system). The default approach > should work fine, provided this patch https://gerrit.fd.io/r/c/vpp/+/31876 > <https://gerrit.fd.io/r/c/vpp/+/31876> is applied (specific to CentOS). But > what you should work just fine. Now the reason why you need to comment > dpdk_depends is kind of mysterious here… > > Regards, > > Mohammed >> On 14 Apr 2021, at 10:07, chetan bhasin <chetan.bhasin...@gmail.com >> <mailto:chetan.bhasin...@gmail.com>> wrote: >> >> Hi, >> >> I have to do the following to enable Mellanox compilation under VPP21.01 >> with dpdk 20.11. >> >> If I dont comment rdma-core dependencies , it will lead to undefined symbols >> . >> >> Can anybody please correct , is this the right way to do it? >> >> -DPDK_MLX4_PMD ?= n >> -DPDK_MLX5_PMD ?= n >> -DPDK_MLX5_COMMON_PMD ?= n >> +DPDK_MLX4_PMD := y >> +DPDK_MLX5_PMD := y >> +DPDK_MLX5_COMMON_PMD = y >> >> -DPDK_MLX_IBV_LINK ?= static >> +DPDK_MLX_IBV_LINK := dlopen >> >> -dpdk_depends := rdma-core $(if $(ARCH_X86_64), ipsec-mb) >> +#dpdk_depends := rdma-core $(if $(ARCH_X86_64), ipsec-mb) >> >> Thanks, >> Chetan >> >> On Tue, Apr 6, 2021 at 4:10 PM chetan bhasin via lists.fd.io >> <http://lists.fd.io/> <chetan.bhasin017=gmail....@lists.fd.io >> <mailto:gmail....@lists.fd.io>> wrote: >> Thanks Guys ! >> >> We have a requirement to compile vppp with DPDK mellanox driver . >> >> Right now issue what i understood is , when we compile vpp_2101 , using >> make build-release , it builds mellanox , but when it is trying to install >> vpp-ext-dep rpm , it got failed because glue library created of mellanox has >> some undefined symbols , >> For your reference , i have set following in dpdk.mk <http://dpdk.mk/> file >> >> -DPDK_MLX4_PMD ?= n >> -DPDK_MLX5_PMD ?= n >> +DPDK_MLX4_PMD := y >> +DPDK_MLX5_PMD := y >> -DPDK_MLX_IBV_LINK ?= static >> +DPDK_MLX_IBV_LINK := shared >> >> please check below logs for reference- >> >> FAILED: drivers/net/mlx4/librte_net_mlx4_glue.so.21.0 >> cc -o drivers/net/mlx4/librte_net_mlx4_glue.so.21.0 >> 'drivers/net/mlx4/8672f8e@@rte_net_mlx4_glue@sha/mlx4_glue.c.o' >> -Wl,--as-needed -Wl,--no-undefined -Wl,-O1 -shared -fPIC -Wl,--start-group >> -Wl,-soname,librte_net_mlx4_glue.so.21.0 -Wl,--no-as-needed -pthread -lm >> -ldl -lnuma -Wl,-export-dynamic -Wl,-h,librte_net_mlx4_glue.so.21.0 >> /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libmlx4.so >> /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libibverbs.so >> -Wl,--end-group >> drivers/net/mlx4/8672f8e@@rte_net_mlx4_glue@sha/mlx4_glue.c.o: In function >> `mlx4_glue_reg_mr': >> mlx4_glue.c:(.text+0x277): undefined reference to `ibv_reg_mr_iova2' >> collect2: error: ld returned 1 exit status >> [8/547] Compiling C object >> 'drivers/a715181@@tmp_rte_net_mlx4@sta/net_mlx4_mlx4_flow.c.o' >> >> ninja: build stopped: subcommand failed. >> >> On Thu, Apr 1, 2021 at 4:33 PM Юрий Иванов <format_...@outlook.com >> <mailto:format_...@outlook.com>> wrote: >> Hi, >> >> Or you can use nativa rdma driver as written in this post and build vpp as >> usual. 😉 >> >> Regards. >> От: vpp-dev@lists.fd.io <mailto:vpp-dev@lists.fd.io> <vpp-dev@lists.fd.io >> <mailto:vpp-dev@lists.fd.io>> от имени Mohammed Hawari <moham...@hawari.fr >> <mailto:moham...@hawari.fr>> >> Отправлено: 1 апреля 2021 г. 13:16 >> Кому: chetan bhasin <chetan.bhasin...@gmail.com >> <mailto:chetan.bhasin...@gmail.com>> >> Копия: vpp-dev <vpp-dev@lists.fd.io <mailto:vpp-dev@lists.fd.io>> >> Тема: Re: [vpp-dev] How to enable Mellanox compilation in VPP 21.01 >> >> >> Hi Chetan, >> >> If you are using CentOS, I’d suggest to cherry-pick >> https://gerrit.fd.io/r/c/vpp/+/31876 <https://gerrit.fd.io/r/c/vpp/+/31876>. >> Also please change the dpdk.mk <http://dpdk.mk/> to also set >> DPDK_MLX5_COMMON_PMD = y. I hope this solves your issue. Otherwise, please >> consider using the rdma native driver that does not rely on DPDK. >> >> Regards >> >> Mohammed >>> On 30 Mar 2021, at 12:41, chetan bhasin <chetan.bhasin...@gmail.com >>> <mailto:chetan.bhasin...@gmail.com>> wrote: >>> >>> Hello Everyone, >>> >>> I am upgrading to vpp 2101 . I am facing a compilation issue after enabling >>> Mellanox compilation in dpdk.mk <http://dpdk.mk/> . >>> >>> --- a/build/external/packages/dpdk.mk <http://dpdk.mk/> >>> +++ b/build/external/packages/dpdk.mk <http://dpdk.mk/> >>> @@ -14,8 +14,8 @@ >>> DPDK_PKTMBUF_HEADROOM ?= 128 >>> DPDK_USE_LIBBSD ?= n >>> DPDK_DEBUG ?= n >>> -DPDK_MLX4_PMD ?= n >>> -DPDK_MLX5_PMD ?= n >>> +DPDK_MLX4_PMD ?= y >>> +DPDK_MLX5_PMD ?= y >>> DPDK_MLX5_COMMON_PMD ?= n >>> >>> >>> Getting below errors . Anybody please help here ? >>> >>> [1344/1846] Compiling C object >>> 'drivers/a715181@@tmp_rte_net_nfp@sta/net_nfp_nfpcore_nfp_nsp_cmds.c.o' >>> [1345/1846] Linking target drivers/librte_net_mlx4.so.21.0 >>> FAILED: drivers/librte_net_mlx4.so.21.0 >>> cc -o drivers/librte_net_mlx4.so.21.0 >>> 'drivers/a715181@@rte_net_mlx4@sha/meson-generated_.._rte_net_mlx4.pmd.c.o' >>> 'drivers/a715181@@tmp_r >>> te_net_mlx4@sta/net_mlx4_mlx4.c.o' >>> 'drivers/a715181@@tmp_rte_net_mlx4@sta/net_mlx4_mlx4_ethdev.c.o' >>> 'drivers/a715181@@tmp_rte_net_mlx4@sta >>> /net_mlx4_mlx4_flow.c.o' >>> 'drivers/a715181@@tmp_rte_net_mlx4@sta/net_mlx4_mlx4_intr.c.o' >>> 'drivers/a715181@@tmp_rte_net_mlx4@sta/net_mlx4_ml >>> x4_mp.c.o' 'drivers/a715181@@tmp_rte_net_mlx4@sta/net_mlx4_mlx4_mr.c.o' >>> 'drivers/a715181@@tmp_rte_net_mlx4@sta/net_mlx4_mlx4_rxq.c.o' 'dri >>> vers/a715181@@tmp_rte_net_mlx4@sta/net_mlx4_mlx4_rxtx.c.o' >>> 'drivers/a715181@@tmp_rte_net_mlx4@sta/net_mlx4_mlx4_txq.c.o' >>> 'drivers/a715181@ >>> @tmp_rte_net_mlx4@sta/net_mlx4_mlx4_utils.c.o' >>> 'drivers/a715181@@tmp_rte_net_mlx4@sta/net_mlx4_mlx4_glue.c.o' >>> -Wl,--as-needed -Wl,--no-und >>> efined -Wl,-O1 -shared -fPIC -Wl,--start-group >>> -Wl,-soname,librte_net_mlx4.so.21 -Wl,--no-as-needed -pthread -lm -ldl >>> -lnuma lib/librte_et >>> hdev.so.21.0 lib/librte_eal.so.21.0 lib/librte_kvargs.so.21.0 >>> lib/librte_telemetry.so.21.0 lib/librte_net.so.21.0 lib/librte_mbuf.so.21.0 >>> lib/librte_mempool.so.21.0 lib/librte_ring.so.21.0 lib/librte_meter.so.21.0 >>> drivers/librte_bus_pci.so.21.0 lib/librte_pci.so.21.0 drivers/ >>> librte_bus_vdev.so.21.0 >>> -Wl,--version-script=/root/tmp/vpp/build-root/build-vpp-native/external/src-dpdk/drivers/net/mlx4/version.map >>> -lpt >>> hread -L/root/tmp/vpp/build-root/install-vpp-native/external/lib64 >>> -l:libbnxt_re-rdmav25.a -l:libcxgb4-rdmav25.a -l:libefa.a -l:libhns-rdm >>> av25.a -l:libi40iw-rdmav25.a -l:libmlx4.a -l:libmlx5.a >>> -l:libmthca-rdmav25.a -l:libocrdma-rdmav25.a -l:libqedr-rdmav25.a >>> -l:libvmw_pvrdma-rdmav25.a -l:libhfi1verbs-rdmav25.a >>> -l:libipathverbs-rdmav25.a -l:librxe-rdmav25.a -l:libsiw-rdmav25.a >>> -l:libibverbs.a -l:librdma_util.a -l:libccan.a -Wl,--end-group >>> '-Wl,-rpath,$ORIGIN/../lib:$ORIGIN/' >>> -Wl,-rpath-link,/root/tmp/vpp/build-root/build-vpp-native/external/build-dpdk/lib >>> >>> -Wl,-rpath-link,/root/tmp/vpp/build-root/build-vpp-native/external/build-dpdk/drivers >>> /bin/ld: cannot find -l:libbnxt_re-rdmav25.a >>> /bin/ld: cannot find -l:libcxgb4-rdmav25.a >>> /bin/ld: cannot find -l:libefa.a >>> /bin/ld: cannot find -l:libhns-rdmav25.a >>> /bin/ld: cannot find -l:libi40iw-rdmav25.a >>> /bin/ld: cannot find -l:libmlx4.a >>> /bin/ld: cannot find -l:libmlx5.a >>> /bin/ld: cannot find -l:libmthca-rdmav25.a >>> /bin/ld: cannot find -l:libocrdma-rdmav25.a >>> /bin/ld: cannot find -l:libqedr-rdmav25.a >>> /bin/ld: cannot find -l:libvmw_pvrdma-rdmav25.a >>> /bin/ld: cannot find -l:libhfi1verbs-rdmav25.a >>> /bin/ld: cannot find -l:libipathverbs-rdmav25.a >>> /bin/ld: cannot find -l:librxe-rdmav25.a >>> /bin/ld: cannot find -l:libsiw-rdmav25.a >>> /bin/ld: cannot find -l:libibverbs.a >>> /bin/ld: cannot find -l:librdma_util.a >>> /bin/ld: cannot find -l:libccan.a >>> collect2: error: ld returned 1 exit status >>> >>> >>> >>> >>> >> >> >> >> >> > > > > > > >
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#19222): https://lists.fd.io/g/vpp-dev/message/19222 Mute This Topic: https://lists.fd.io/mt/81718770/21656 Group Owner: vpp-dev+ow...@lists.fd.io Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-