Please try https://gerrit.fd.io/r/c/vpp/+/32965 and reports if it works.
Best ben > -----Original Message----- > From: vpp-dev@lists.fd.io <vpp-dev@lists.fd.io> On Behalf Of Pierre Louis > Aublin > Sent: jeudi 1 juillet 2021 07:36 > To: vpp-dev@lists.fd.io > Subject: [vpp-dev] VPP on a Bluefield-2 smartNIC > > Dear VPP developers > > I would like to run VPP on the Bluefield-2 smartNIC, but even though I > managed to compile it the interface doesn't show up inside the CLI. By > any chance, would you know how to compile and configure vpp for this > device? > > I am using VPP v21.06-rc2 and did the following modifications so that it > can compile: > ``` > diff --git a/build/external/packages/dpdk.mk > b/build/external/packages/dpdk.mk > index c7eb0fc3f..31a5c764e 100644 > --- a/build/external/packages/dpdk.mk > +++ b/build/external/packages/dpdk.mk > @@ -15,8 +15,8 @@ DPDK_PKTMBUF_HEADROOM ?= 128 > DPDK_USE_LIBBSD ?= n > DPDK_DEBUG ?= n > DPDK_MLX4_PMD ?= n > -DPDK_MLX5_PMD ?= n > -DPDK_MLX5_COMMON_PMD ?= n > +DPDK_MLX5_PMD ?= y > +DPDK_MLX5_COMMON_PMD ?= y > DPDK_TAP_PMD ?= n > DPDK_FAILSAFE_PMD ?= n > DPDK_MACHINE ?= default > diff --git a/build/external/packages/ipsec-mb.mk > b/build/external/packages/ipsec-mb.mk > index d0bd2af19..119eb5219 100644 > --- a/build/external/packages/ipsec-mb.mk > +++ b/build/external/packages/ipsec-mb.mk > @@ -34,7 +34,7 @@ define ipsec-mb_build_cmds > SAFE_DATA=n \ > PREFIX=$(ipsec-mb_install_dir) \ > NASM=$(ipsec-mb_install_dir)/bin/nasm \ > - EXTRA_CFLAGS="-g -msse4.2" > $(ipsec-mb_build_log) > + EXTRA_CFLAGS="-g" > $(ipsec-mb_build_log) > endef > > define ipsec-mb_install_cmds > ``` > > > However, when running the VPP CLI, the network interface does not show up: > ``` > $ sudo -E make run > clib_sysfs_prealloc_hugepages:261: pre-allocating 6 additional 2048K > hugepages on numa node 0 > dpdk [warn ]: Unsupported PCI device 0x15b3:0xa2d6 found > at PCI address 0000:03:00.0 > > dpdk/cryptodev [warn ]: dpdk_cryptodev_init: Failed to configure > cryptodev > vat-plug/load [error ]: vat_plugin_register: oddbuf plugin not > loaded... > _______ _ _ _____ ___ > __/ __/ _ \ (_)__ | | / / _ \/ _ \ > _/ _// // / / / _ \ | |/ / ___/ ___/ > /_/ /____(_)_/\___/ |___/_/ /_/ > > DBGvpp# show int > Name Idx State MTU > (L3/IP4/IP6/MPLS) Counter Count > local0 0 down 0/0/0/0 > DBGvpp# sh hard > Name Idx Link Hardware > local0 0 down local0 > Link speed: unknown > local > ``` > > > The dpdk-testpmd application seems to start correctly though: > ``` > $ sudo ./build-root/install-vpp_debug-native/external/bin/dpdk-testpmd > -l 0-2 -a 0000:03:00.00 -- -i --nb-cores=2 --nb-ports=1 > --total-num-mbufs=2048 > EAL: Detected 8 lcore(s) > EAL: Detected 1 NUMA nodes > EAL: Detected static linkage of DPDK > EAL: Multi-process socket /var/run/dpdk/rte/mp_socket > EAL: Selected IOVA mode 'VA' > EAL: No available 32768 kB hugepages reported > EAL: No available 64 kB hugepages reported > EAL: No available 1048576 kB hugepages reported > EAL: Probing VFIO support... > EAL: VFIO support initialized > EAL: Invalid NUMA socket, default to 0 > EAL: Probe PCI driver: mlx5_pci (15b3:a2d6) device: 0000:03:00.0 (socket > 0) > mlx5_pci: Failed to allocate Tx DevX UAR (BF) > mlx5_pci: Failed to allocate Rx DevX UAR (BF) > mlx5_pci: Size 0xFFFF is not power of 2, will be aligned to 0x10000. > Interactive-mode selected > testpmd: create a new mbuf pool <mb_pool_0>: n=2048, size=2176, socket=0 > testpmd: preferred mempool ops selected: ring_mp_mc > > Warning! port-topology=paired and odd forward ports number, the last > port will pair with itself. > > Configuring Port 0 (socket 0) > Port 0: 0C:42:A1:A4:89:B4 > Checking link statuses... > Done > testpmd> > ``` > > Is the problem related to the failure to allocate Tx and Rx DevX UAR? > How can I fix this? > > > I've also tried to set the Bluefield configuration parameters from dpdk > (https://github.com/DPDK/dpdk/blob/e2a234488854fdeee267a2aa582aa082fce01d6 > e/config/defconfig_arm64-bluefield-linuxapp-gcc) > as follows: > ``` > diff --git a/build-data/packages/vpp.mk b/build-data/packages/vpp.mk > index 7db450e05..91017dda0 100644 > --- a/build-data/packages/vpp.mk > +++ b/build-data/packages/vpp.mk > @@ -32,7 +32,8 @@ vpp_cmake_args += -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON > endif > ifeq (,$(TARGET_PLATFORM)) > ifeq ($(MACHINE),aarch64) > -vpp_cmake_args += -DVPP_LOG2_CACHE_LINE_SIZE=7 > +vpp_cmake_args += -DVPP_LOG2_CACHE_LINE_SIZE=6 > endif > endif > > diff --git a/build/external/packages/dpdk.mk > b/build/external/packages/dpdk.mk > index 70ff5c90e..e2a64e67c 100644 > --- a/build/external/packages/dpdk.mk > +++ b/build/external/packages/dpdk.mk > @@ -15,13 +15,20 @@ DPDK_PKTMBUF_HEADROOM ?= 128 > DPDK_USE_LIBBSD ?= n > DPDK_DEBUG ?= n > DPDK_MLX4_PMD ?= n > -DPDK_MLX5_PMD ?= n > -DPDK_MLX5_COMMON_PMD ?= n > +DPDK_MLX5_PMD ?= y > +DPDK_MLX5_COMMON_PMD ?= y > DPDK_TAP_PMD ?= n > DPDK_FAILSAFE_PMD ?= n > DPDK_MACHINE ?= default > DPDK_MLX_IBV_LINK ?= static > > +# bluefield specific > +DPDK_ARCH_ARM_TUNE ?= "cortex-a72" > +DPDK_MAX_NUMA_NODES ?= 1 > +DPDK_CACHE_LINE_SIZE ?= 64 > +DPDK_EAL_NUMA_AWARE_HUGEPAGES ?= n > +DPDK_LIBRTE_VHOST_NUMA ?= n > + > dpdk_version ?= 21.05 > dpdk_base_url ?= http://fast.dpdk.org/rel > dpdk_tarball := dpdk-$(dpdk_version).tar.xz > @@ -178,6 +185,11 @@ define dpdk_config_cmds > echo "DPDK post meson configuration" && \ > echo "Altering rte_build_config.h" && \ > $(call dpdk_config,PKTMBUF_HEADROOM) && \ > + $(call dpdk_config,ARCH_ARM_TUNE) && \ > + $(call dpdk_config,MAX_NUMA_NODES) && \ > + $(call dpdk_config,CACHE_LINE_SIZE) && \ > + $(call dpdk_config_def,EAL_NUMA_AWARE_HUGEPAGES) && \ > + $(call dpdk_config_def,LIBRTE_VHOST_NUMA) && \ > $(call dpdk_config_def,USE_LIBBSD) > endef > ``` > > Unfortunately this led to an error when launching the CLI: > ``` > $ sudo -E make run > dpdk [warn ]: Unsupported PCI device 0x15b3:0xa2d6 found > at PCI address 0000:03:00.0 > > 0: dpdk_buffer_pool_init: failed to create normal mempool for numa node 0 > $ > ``` > > Thank you very much
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#19673): https://lists.fd.io/g/vpp-dev/message/19673 Mute This Topic: https://lists.fd.io/mt/83910198/21656 Group Owner: vpp-dev+ow...@lists.fd.io Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-