What is your VPP dpdk config looks like in startup.conf? Esp. did you whitelist 
the device? See 
https://fd.io/docs/vpp/master/gettingstarted/users/configuring/startup.html#the-dpdk-section
Also, please share the output of 'show logs'.

Best
ben

> -----Original Message-----
> From: Pierre Louis Aublin <pierrelo...@iij-ii.co.jp>
> Sent: jeudi 1 juillet 2021 11:08
> To: Benoit Ganne (bganne) <bga...@cisco.com>; vpp-dev@lists.fd.io
> Subject: Re: [vpp-dev] VPP on a Bluefield-2 smartNIC
> 
> The"Unsupported PCI device 0x15b3:0xa2d6 found at PCI address
> 0000:03:00.0" message disappears; however the network interface still
> doesn't show up. Interestingly, vpp on the host also prints this
> message, yet the interface can be used.
> 
> By any chance, would you have any clue on what I could try to further
> debug this issue?
> 
> Best
> Pierre Louis
> 
> On 2021/07/01 17:50, Benoit Ganne (bganne) via lists.fd.io wrote:
> > 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 (#19678): https://lists.fd.io/g/vpp-dev/message/19678
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]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to