dpdk怎么安装 dpdk绑定网卡

手动绑定与解绑dpdk驱动
以(slot = 0000:3b:00.0, dpdk_driver = vfio-pci, vendor = 0x8086, device = 0x100e)为例 。
【dpdk怎么安装 dpdk绑定网卡】slot为设备的PCI插槽号,即设备的PCI号 。
dpdk_driver驱动选用vcfio-pci(也可以使用igb_uio) 。
vendor为厂商号,0x8086为Intel厂商,可以通过/sys/bus/pci/devices/0000:3b.00.0/vendor查到 。
device为设备号,0x100e为82540EM网卡 , 可以通过/sys/bus/pci/devices/0000:3b.00.0/device查到 。
设备信息也可以通过lspci -kvmms和lspci -kvmmns查看(后者多个n表示以数字形式查看) 。

dpdk怎么安装 dpdk绑定网卡

文章插图
对于linux-3.15及以上的版本
# 绑定
echo “vfio-pci” > /sys/bus/pci/devices/0000:3b.00.0/driver_override
echo “0000:3b.00.0” > /sys/bus/pci/drivers/vfio-pci/bind
# 解绑
echo “0000:3b.00.0” > /sys/bus/pci/drivers/vfio-pci/unbind
对于linux-3.15以下的版本
# 绑定
echo “8086 100e” > /sys/bus/pci/drivers/vfio-pci/new_id
echo “0000:3b.00.0” > /sys/bus/pci/drivers/vfio-pci/bind
# 解绑
echo “0000:3b.00.0” > /sys/bus/pci/drivers/vfio-pci/unbind
绑定方式对比
可以发现 , linux-3.15以上或以下的版本 , 解绑驱动的方式是没有发生变化,只有绑定驱动的方式有区别,3.15以上使用的是driver_override字段,而3.15以下使用的是new_id字段 。