[dpdk-dev] rte_eth_dev_count_avail() returns 0 with the MLX5 NIC card

vikram T vikramet at gmail.com
Thu Oct 17 15:07:09 CEST 2019


Hi,
I am facing an issue with rte_eth_dev_count_avail() returns 0 on the MLX5
NIC card.
"dpdk-devbind.py -s" says that the interface is bound to mlx5_core. ( Need
not be bounded to igb_uio)

*# /var/cache/ocsm/dpdk/dpdk-18.11/usertools/dpdk-devbind.py -s*

Network devices using kernel driver
===================================
0000:02:00.0 'NetXtreme BCM5720 Gigabit Ethernet PCIe 165f' if=em1 drv=tg3
unused=igb_uio *Active*
0000:02:00.1 'NetXtreme BCM5720 Gigabit Ethernet PCIe 165f' if=em2 drv=tg3
unused=igb_uio
0000:08:00.0 'MT27700 Family [ConnectX-4] 1013' if=p2p1 drv=mlx5_core
unused=igb_uio
0000:08:00.1 'MT27700 Family [ConnectX-4] 1013' if=p2p2 drv=mlx5_core
unused=igb_uio
0000:41:00.0 'Ethernet Controller X710 for 10GbE SFP+ 1572' if=p1p1
drv=i40e unused=igb_uio
0000:41:00.1 'Ethernet Controller X710 for 10GbE SFP+ 1572' if=p1p2
drv=i40e unused=igb_uio

No 'Crypto' devices detected
============================

No 'Eventdev' devices detected
==============================

No 'Mempool' devices detected
=============================

No 'Compress' devices detected
==============================

*# ibv_devinfo*
hca_id: mlx5_0
        transport:                      InfiniBand (0)
        fw_ver:                         12.25.1020
        node_guid:                      506b:4b03:00db:fe0a
        sys_image_guid:                 506b:4b03:00db:fe0a
        vendor_id:                      0x02c9
        vendor_part_id:                 4115
        hw_ver:                         0x0
        board_id:                       MT_2150110033
        phys_port_cnt:                  1
                port:   1
                        state:                  PORT_ACTIVE (4)
                        max_mtu:                4096 (5)
                        active_mtu:             1024 (3)
                        sm_lid:                 0
                        port_lid:               0
                        port_lmc:               0x00
                        link_layer:             Ethernet

hca_id: mlx5_1
        transport:                      InfiniBand (0)
        fw_ver:                         12.25.1020
        node_guid:                      506b:4b03:00db:fe0b
        sys_image_guid:                 506b:4b03:00db:fe0a
        vendor_id:                      0x02c9
        vendor_part_id:                 4115
        hw_ver:                         0x0
        board_id:                       MT_2150110033
        phys_port_cnt:                  1
                port:   1
                        state:                  PORT_DOWN (1)
                        max_mtu:                4096 (5)
                        active_mtu:             1024 (3)
                        sm_lid:                 0
                        port_lid:               0
                        port_lmc:               0x00
                        link_layer:             Ethernet


# *mst start*
Starting MST (Mellanox Software Tools) driver set
Loading MST PCI module - Success
Loading MST PCI configuration module - Success
Create devices
-W- Missing "lsusb" command, skipping MTUSB devices detection
Unloading MST PCI module (unused) - Success
*# mst status*
MST modules:
------------
    MST PCI module is not loaded
    MST PCI configuration module loaded

MST devices:
------------
/dev/mst/mt4115_pciconf0         - PCI configuration cycles access.
                                   domain:bus:dev.fn=0000:08:00.0
addr.reg=88 data.reg=92 cr_bar.gw_offset=-1
                                   Chip revision is: 00


* # ls -d /sys/class/net/*/device/infiniband_verbs/uverbs* | cut -d / -f 5*
p2p1
p2p2

However testpmd works fine here;
*# ./testpmd -l 8-15 -n 4 -w 08:00.0  -w 08:00.1 -- --rxq=2 --txq=2 -i*
EAL: Detected 32 lcore(s)
EAL: Detected 2 NUMA nodes
EAL: Multi-process socket /var/run/dpdk/rte/mp_socket
EAL: Probing VFIO support...
EAL: VFIO support initialized
EAL: PCI device 0000:08:00.0 on NUMA socket 0
EAL:   probe driver: 15b3:1013 net_mlx5
EAL: PCI device 0000:08:00.1 on NUMA socket 0
EAL:   probe driver: 15b3:1013 net_mlx5
Interactive-mode selected
testpmd: create a new mbuf pool <mbuf_pool_socket_0>: n=203456, size=2176,
socket=0
testpmd: preferred mempool ops selected: ring_mp_mc
testpmd: create a new mbuf pool <mbuf_pool_socket_1>: n=203456, size=2176,
socket=1
testpmd: preferred mempool ops selected: ring_mp_mc
Configuring Port 0 (socket 0)
Port 0: 50:6B:4B:DB:FE:0A
Configuring Port 1 (socket 0)
Port 1: 50:6B:4B:DB:FE:0B
Checking link statuses...
Done
testpmd> Killed


Is anything missing here for API rte_eth_dev_count_avail() not working
here. Guidance to resolve from this blocking issue is much appreciated.
Let me know if any other input/info is required.

Thanks in advance
Regards
Vikram


More information about the dev mailing list