Sorry, there was a typo. You should use DPDK_MLX5_COMMON_PMD=y instead of DPDK_MLX_COMMON_PMD=y.
-Matt On Mon, May 2, 2022 at 11:28 AM Johnny Martinez <john.marti...@gmail.com> wrote: > Hello Matt! > > *Thank you very much for the reply!* > > Our end goal is to be using Alma Linux but we went ahead and tried it in a > fresh Ubuntu 20.04 installation with the same result. > > It looks like it is unable to compile the *mlx5 drivers*. > > *I’ve attached the complete build log for your review.* > > > > *Build was started with:* > > *make DPDK_MLX4_PMD=y DPDK_MLX5_PMD=y DPDK_MLX_COMMON_PMD=y pkg-deb | tee > /root/vpp-build.log* > > > > As an extra precaution, the vpp.mk content is: > > > > *MACHINE=$(shell uname -m)* > > *vpp_arch = native* > > *vpp_root_packages = vpp* > > *vpp_debug_TAG_BUILD_TYPE = debug* > > *vpp_TAG_BUILD_TYPE = release* > > *vpp_clang_TAG_BUILD_TYPE = release* > > *vpp_gcov_TAG_BUILD_TYPE = gcov* > > *vpp_coverity_TAG_BUILD_TYPE = coverity* > > *vpp_dpdk_inc_dir = /usr/include/dpdk/* > > *vpp_dpdk_lib_dir = /usr/lib64/* > > *vpp_uses_dpdk_mlx4_pmd = yes* > > *DPDK_MLX4_PMD=y* > > *DPDK_MLX5_PMD=y* > > *DPDK_MLX_COMMON_PMD=y* > > > > The build completes, but there’s an issue with the MLX5 driver. As seen in > the build log, the *MLX4 is built, but MLX5 is not*. I’ve tried searching > online, but there’s reference to *glue* with regard to the MLX5, but > nothing actionable I could find: > > > > *Part 1: Shows that the library “mlx4” and “mlx5” are included as part of > “make” (means our build options were correctly interperated):* > > > > *cmake3 --build > /root/azure/vpp/build-root/rpmbuild/vpp-22.06/build-root/build-vpp-native/external/build-rdma-core > -- libccan.a libibverbs.a librdma_util.a libmlx5.a libmlx4.a > > /root/azure/vpp/build-root/rpmbuild/vpp-22.06/build-root/build-vpp-native/external/rdma-core.build.log* > > *sed 's/^Libs.private:.*/Libs.private: -lmlx4 -lmlx5 -libverbs -lrdma_util > -lccan -lpthread/' -i > /root/azure/vpp/build-root/rpmbuild/vpp-22.06/build-root/build-vpp-native/external/build-rdma-core/lib/pkgconfig/libibverbs.pc > >> > /root/azure/vpp/build-root/rpmbuild/vpp-22.06/build-root/build-vpp-native/external/rdma-core.build.log* > > > *Part 2: Shows that MLX5 is missing “common_mlx5” (which I can’t find a > way to install…?) so is disabled. MLX4 however, is built:* > > > > *Using 'PKG_CONFIG_PATH' from environment with value: > '/root/azure/vpp/build-root/rpmbuild/vpp-22.06/build-root/install-vpp-native/external/lib/pkgconfig'* > > *Run-time dependency libmlx4 found: YES 1.0.39.1* > > *Using 'PKG_CONFIG_PATH' from environment with value: > '/root/azure/vpp/build-root/rpmbuild/vpp-22.06/build-root/install-vpp-native/external/lib/pkgconfig'* > > *Run-time dependency libibverbs found: YES 1.14.39.1* > > *Compiler for C supports arguments -std=c11: YES* > > *Compiler for C supports arguments -Wno-strict-prototypes > -Wstrict-prototypes: YES* > > *Compiler for C supports arguments -D_BSD_SOURCE: YES* > > *Compiler for C supports arguments -D_DEFAULT_SOURCE: YES* > > *Compiler for C supports arguments -D_XOPEN_SOURCE=600: YES* > > *Header <infiniband/mlx4dv.h> has symbol > "MLX4DV_SET_CTX_ATTR_BUF_ALLOCATORS" with dependencies libmlx4, libibverbs: > YES* > > *Header <infiniband/mlx4dv.h> has symbol "MLX4DV_QP_MASK_UAR_MMAP_OFFSET" > with dependencies libmlx4, libibverbs: YES* > > *Checking whether type "struct mlx4_wqe_lso_seg" has member "mss_hdr_size" > with dependencies libmlx4, libibverbs: YES* > > *Configuring mlx4_autoconf.h using configuration* > > *Compiler for C supports arguments -std=c11: YES* > > *Compiler for C supports arguments -Wno-strict-prototypes > -Wstrict-prototypes: YES* > > *Compiler for C supports arguments -D_BSD_SOURCE: YES* > > *Compiler for C supports arguments -D_DEFAULT_SOURCE: YES* > > *Compiler for C supports arguments -D_XOPEN_SOURCE=600: YES* > > *Message: Disabling mlx5 [drivers/net/mlx5]: missing internal dependency > "common_mlx5"* > > *Run-time dependency libmusdk found: NO (tried pkgconfig)* > > *Run-time dependency libmusdk found: NO (tried pkgconfig)* > > *Run-time dependency netcope-common found: NO (tried pkgconfig)* > > > > *Part 3: Shows multiple missing “internal dependency” issues:* > > > > *Message: Disabling dpaa [drivers/dma/dpaa]: missing internal dependency > "bus_dpaa"* > > *Message: Disabling dpaa [drivers/net/dpaa]: missing internal dependency > "mempool_dpaa"* > > *Message: Disabling kni [drivers/net/kni]: missing internal dependency > "kni"* > > *Message: Disabling mlx5 [drivers/net/mlx5]: missing internal dependency > "common_mlx5"* > > *Message: Disabling caam_jr [drivers/crypto/caam_jr]: missing internal > dependency "bus_dpaa"* > > *Message: Disabling mlx5 [drivers/crypto/mlx5]: missing internal > dependency "common_mlx5"* > > *Message: Disabling mlx5 [drivers/compress/mlx5]: missing internal > dependency "common_mlx5"* > > *Message: Disabling mlx5 [drivers/regex/mlx5]: missing internal dependency > "common_mlx5"* > > *Message: Disabling mlx5 [drivers/vdpa/mlx5]: missing internal dependency > "common_mlx5"* > > > *I am not able to find a way to enable MLX5.* > > -- > John M. > > > On Fri, Apr 29, 2022 at 4:31 PM Matthew Smith <mgsm...@netgate.com> wrote: > >> >> Hi John, >> >> Are you using a stock build of VPP from packagecloud or did you build >> your own? VPP's build of DPDK does not enable the Mellanox (mlx4, mlx5) >> PMDs by default. If you didn't already, you would need to build VPP with >> the environment variables DPDK_MLX4_PMD, DPDK_MLX5_PMD, and >> DPDK_MLX_COMMON_PMD set to y. You could change the default values from n to >> y in build/external/packages/dpdk.mk or you could run something like >> 'make DPDK_MLX4_PMD=y DPDK_MLX5_PMD=y DPDK_MLX_COMMON_PMD=y pkg-deb'. That >> presumes that you're running on ubuntu or some other debian-based distro, >> if you're running some other OS maybe substituting pkg-snap or pkg-rpm for >> the pkg-deb in that command would work for you. >> >> -Matt >> >> >> On Fri, Apr 29, 2022 at 2:40 PM Johnny Martinez <john.marti...@gmail.com> >> wrote: >> >>> Johnny Martinez <john.marti...@gmail.com> >>> 9:57 AM (5 hours ago) >>> to Benoit >>> *@Ben *- thank you *VERY *much for the detailed response! >>> >>> I had *partial *success but almost there - now I am seeing some DPDK >>> errors and other behavior outlined below. >>> >>> On my test device I have 3 interfaces: >>> >>> - Management interface (kernel interface, not managed by VPP) >>> - vpp-wan interface >>> - vpp-lan interface >>> >>> I configureD the interfaces with the following: >>> >>> set logging class linux-cp rate-limit 1000 level warn syslog-level notice >>> >>> >>> lcp default netns dataplane >>> >>> lcp lcp-sync on >>> >>> lcp lcp-auto-subint on >>> >>> >>> # vpp-wan >>> >>> vpp# lcp create NetVSC1 host-if vpp-wan >>> >>> vpp# set int state NetVSC1 up >>> >>> vpp# set int ip address NetVSC1 10.0.2.4/24 >>> >>> vpp# ip route add 0.0.0.0/0 via 10.0.2.1 >>> >>> >>> # vpp-lan >>> >>> vpp# lcp create NetVSC0 host-if vpp-lan >>> >>> vpp# set int state NetVSC0 up >>> >>> vpp# set int ip address NetVSC0 10.0.1.4/24 >>> >>> >>> I am now able to see the two interfaces in vpp *HOWEVER *I am not able >>> to set the MTU size on either interface to 1500. >>> >>> vpp# set int mtu 1500 NetVSC0 >>> set interface mtu: Unsupported (dpdk driver doesn't support MTU change) >>> vpp# set int mtu 1500 NetVSC1 >>> set interface mtu: Unsupported (dpdk driver doesn't support MTU change) >>> >>> >>> I see the following in the log files using '*journalctl | grep dpdk*' >>> - we get two seperate DPDK errors. *One seems to be interface specific >>> and the other when we try to set the MTU size*. >>> >>> The *orange *error is every second - whereas the MTU error is only when >>> we try to set the MTU size. >>> >>> *Apr 29 12:55:15 azure-demo-node-001.vnet[2409]: dpdk: hn_vf_add(): >>> RNDIS reports VF but device not found, retrying* >>> >>> *Apr 29 12:55:16 azure-demo-node-001.vnet[2409]: dpdk: hn_vf_attach(): >>> Couldn't find port for VF* >>> >>> *Apr 29 12:55:16 azure-demo-node-001.vnet[2409]: dpdk: hn_vf_add(): >>> RNDIS reports VF but device not found, retrying* >>> >>> *Apr 29 12:55:16 azure-demo-node-001.vnet[2409]: dpdk: hn_vf_attach(): >>> Couldn't find port for VF* >>> >>> *Apr 29 12:55:16 azure-demo-node-001.vnet[2409]: dpdk: hn_vf_add(): >>> RNDIS reports VF but device not found, retrying* >>> >>> *Apr 29 12:55:16 azure-demo-node-001.vnet[2409]: dpdk: [0] >>> rte_eth_dev_set_mtu failed (mtu 1496, rv -95)* >>> >>> *Apr 29 12:55:16 azure-demo-node-001.vnet[2409]: set interface mtu: >>> Unsupported (dpdk driver doesn't support MTU change* >>> >>> *Apr 29 12:55:17 azure-demo-node-001.vnet[2409]: dpdk: hn_vf_attach(): >>> Couldn't find port for VF* >>> >>> *Apr 29 12:55:17 azure-demo-node-001.vnet[2409]: dpdk: hn_vf_add(): >>> RNDIS reports VF but device not found, retrying* >>> >>> *Apr 29 12:55:17 azure-demo-node-001.vnet[2409]: dpdk: hn_vf_attach(): >>> Couldn't find port for VF* >>> >>> *Apr 29 12:55:17 azure-demo-node-001.vnet[2409]: dpdk: hn_vf_add(): >>> RNDIS reports VF but device not found, retrying* >>> >>> >>> Anyone have any recommendation on how to resolve this? >>> >>> *I have also tried setting dev XXX and vdev commands in the dpdk{} >>> block, but this causes the virtual interfaces not to be found (as you have >>> previously mentioned).* >>> >>> *Thank you all in advance for your assistance!* >>> >>> -- >>> John M >>> >>> >>> On Fri, Apr 29, 2022 at 2:40 PM Matthew Smith <mgsm...@netgate.com> >>> wrote: >>> >>>> Hi Ben, >>>> >>>> Sure, I'll work on an update to the doc. >>>> >>>> -Matt >>>> >>>> >>>> On Fri, Apr 29, 2022 at 3:48 AM Benoit Ganne (bganne) <bga...@cisco.com> >>>> wrote: >>>> >>>>> Hi Matt, John, >>>>> >>>>> This is a great summary! >>>>> >>>>> >> The only reference I could find for VPP in Azure was in this link >>>>> >> but it is very outdated: >>>>> >> https://fd.io/docs/vpp/v2101/usecases/vppinazure.html >>>>> >>>>> > Yes, that doc is way outdated. I advise against following the >>>>> instructions >>>>> > in it. >>>>> >>>>> Matt or John, would you mind proposing a patch for that? Even a quick >>>>> & dirty "here are the steps you need to follow" would be great. >>>>> >>>>> Best >>>>> ben >>>>> >>>>
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#21326): https://lists.fd.io/g/vpp-dev/message/21326 Mute This Topic: https://lists.fd.io/mt/90759128/21656 Group Owner: vpp-dev+ow...@lists.fd.io Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-