Networking dpdk_nic_bind.py不';为什么不出示Mellanox卡?

Networking dpdk_nic_bind.py不';为什么不出示Mellanox卡?,networking,dpdk,mellanox,Networking,Dpdk,Mellanox,我正在尝试在Mellanox ConnectX-3卡上设置DPDK,并运行它附带的一些应用程序,例如l2fwd。 我的理解是,我需要使用dpdk发行版附带的dpdk_nic_bind.py脚本将端口绑定到Mellanox卡PMD驱动程序。但是,dpdk_nic_bind.py不支持我的Mellanox卡 ./dpdk_nic_bind.py -s Network devices using DPDK-compatible driver =============================

我正在尝试在Mellanox ConnectX-3卡上设置DPDK,并运行它附带的一些应用程序,例如l2fwd。 我的理解是,我需要使用dpdk发行版附带的dpdk_nic_bind.py脚本将端口绑定到Mellanox卡PMD驱动程序。但是,dpdk_nic_bind.py不支持我的Mellanox卡

./dpdk_nic_bind.py -s

Network devices using DPDK-compatible driver
============================================
<none>

Network devices using kernel driver
===================================
0000:01:00.0 '82599ES 10-Gigabit SFI/SFP+ Network Connection' if=eth0 drv=ixgbe unused=igb_uio,vfio-pci,uio_pci_generic *Active*
0000:01:00.1 '82599ES 10-Gigabit SFI/SFP+ Network Connection' if=eth1 drv=ixgbe unused=igb_uio,vfio-pci,uio_pci_generic 

Other network devices
=====================
<none>
/dpdk\u nic\u bind.py-s
使用DPDK兼容驱动程序的网络设备
============================================
使用内核驱动程序的网络设备
===================================
0000:01:00.0“82599ES万兆SFI/SFP+网络连接”if=eth0 drv=ixgbe unused=igb_uio、vfio pci、uio_pci_generic*活动*
0000:01:00.1“82599ES万兆SFI/SFP+网络连接”if=eth1 drv=ixgbe unused=igb_uio、vfio pci、uio_pci_通用
其他网络设备
=====================

一般来说,我需要进行绑定吗?如果是,如何进行?如果没有,PMD驱动程序是如何启用的?

如果要将其与dpdk_nic_bind.py绑定,则应运行:dpdk_nic_bind--bind userspace driver BDF,而BDF是ethtool-i ethName看到的。在这种情况下,用户空间驱动程序可能是ib_ipoib。您可以通过运行dpdk_nic_bind.py-s并在“网络设备使用内核驱动程序”部分中查找connectx驱动程序来找到所需的用户空间驱动程序

如果要将其与dpdk_nic_bind.py绑定,应该运行:dpdk_nic_bind--bind userspace driver BDF,其中BDF是ethtool-i ethName所看到的。在这种情况下,用户空间驱动程序可能是ib_ipoib。您可以通过运行dpdk_nic_bind.py-s并在“网络设备使用内核驱动程序”部分中查找connectx驱动程序来找到所需的用户空间驱动程序

对于Mellanox,您应遵循以下步骤:

基本上,答案是:

  • 不,您不需要将卡绑定到UIO,但需要加载Mellanox内核模块:

    modprobe -a ib_uverbs mlx4_en mlx4_core mlx4_ib
    
  • 您应该使用白名单EAL参数在Mellanox NIC上运行DPDK应用程序,即:

    testpmd -w 0000:83:00.0 -w 0000:84:00.0 ...
    

  • 对于Mellanox,您应遵循此处描述的程序:

    基本上,答案是:

  • 不,您不需要将卡绑定到UIO,但需要加载Mellanox内核模块:

    modprobe -a ib_uverbs mlx4_en mlx4_core mlx4_ib
    
  • 您应该使用白名单EAL参数在Mellanox NIC上运行DPDK应用程序,即:

    testpmd -w 0000:83:00.0 -w 0000:84:00.0 ...
    

  • 尝试使用driverctl,即:driverctl-v list devices | grep-ie“net | connectx”。PS:mellanox驱动程序在默认dpdk confg scropt中未启用,您需要设置CONFIG_RTE_LIBRTE_MLX4_PMDy@AlecIstomin. 谢谢你的评论。我已经做了上面提到的.config修改。什么是driverctl?我在哪里可以找到它?它是dpdk_nic_bind.py的一种替代方案,它在重新启动时保持设备分配。我在fedora中找到了.src.rpm,谷歌在您的发行版中使用了driverctl,即:driverctl-v list devices | grep-ie“net | connectx”。PS:mellanox驱动程序在默认dpdk confg scropt中未启用,您需要设置CONFIG_RTE_LIBRTE_MLX4_PMDy@AlecIstomin. 谢谢你的评论。我已经做了上面提到的.config修改。什么是driverctl?我在哪里可以找到它?它是dpdk_nic_bind.py的一种替代方案,它在重新启动时保持设备分配。我在fedora中找到了.src.rpm,在您的发行版中搜索了一个