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
<chetan.bhasin017=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 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> 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 <vpp-dev@lists.fd.io> от имени Mohammed Hawari
>> <moham...@hawari.fr>
>> *Отправлено:* 1 апреля 2021 г. 13:16
>> *Кому:* chetan bhasin <chetan.bhasin...@gmail.com>
>> *Копия:* vpp-dev <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. Also please change the 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>
>> wrote:
>>
>> Hello Everyone,
>>
>> I am upgrading to vpp 2101 . I am facing a compilation issue after
>> enabling Mellanox compilation in dpdk.mk .
>>
>> --- a/build/external/packages/dpdk.mk
>> +++ b/build/external/packages/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 (#19188): https://lists.fd.io/g/vpp-dev/message/19188
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]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to