DPDK网卡驱动加载、绑定和解绑
Igb_uio代码相关的可以分为三个部分:igb_uio内核驱动,内核uio框架,uio用户态部分。
加载igb_uio模块与绑定dpdk网卡
a)加载dpdk驱动需要先加载uio:modprobe uio
b)加载dpdk驱动的方法:/sbin/insmod igb_uio
c)删除驱动方法:/sbin/rmmod igb_uio
如果不执行a步骤,直接执行b步骤的话,会找不到驱动,不识别,错误如下所示:
insmod: ERROR: could not insert module igb_uio.ko: Unknown symbol in module
加载DPDK驱动,并查看DPDK驱动是否加载成功,如下截图
查看DPDK是否绑定成功
绑定DPDK网卡
./dpdk_nic_bind.py --bind=igb_uio eth1
解绑DPDK网卡
./dpdk_nic_bind.py -u 0000:22:00.1(PCI address)
解绑后,需要再重新绑会原来的模式
./dpdk_nic_bind.py -b ixgbe 0000:22:00.1(PCI address)
另附:
[[email protected] x86_64-native-linuxapp-gcc]# insmod kmod/igb_uio.ko
insmod: ERROR: could not insert module kmod/igb_uio.ko: File exists这个报错为 File exists
解决办法:
[[email protected] kmod]# rmmod igb_uio.ko
[[email protected] kmod]# insmod igb_uio.ko
即先卸载驱动,再重新加载驱动。