虚拟机环境下DPDK运行时的一些错误解决

Posted zcplayground

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了虚拟机环境下DPDK运行时的一些错误解决相关的知识,希望对你有一定的参考价值。

  • 在绑定网卡到DPDK模块时 报错 :is active. Not modifying
Routing table indicates that interface 0000:02:01.0 is active. Not modifying

解决方法:

ifconfig <网卡名称> down
  • 运行testpmd时无法分配内存:
EAL: Error - exiting with code: 1
  Cause: Creation of mbuf pool for socket 0 failed: Cannot allocate memory

内存设置小了,将内存设置大一些(例如从64改成512),问题解决。

  • 运行testpmd,持续输出输入输出的报错信息:
EAL: Error reading from file descriptor 20: Input/output error
EAL: Error reading from file descriptor 18: Input/output error
EAL: Error reading from file descriptor 20: Input/output error
EAL: Error reading from file descriptor 18: Input/output error
EAL: Error reading from file descriptor 20: Input/output error
EAL: Error reading from file descriptor 18: Input/output error

原因:在虚拟机添加的网卡,dpdk不支持导致的。需要修改一行代码,跳过dpdk pci 检查

lib/librte_eal/linuxapp/igb_uio/igb_uio.c文件中找到

pci_intx_mask_supported(dev)

修改为

pci_intx_mask_supported(dev||true)

需要重新编译并加载IO模块。

以上是关于虚拟机环境下DPDK运行时的一些错误解决的主要内容,如果未能解决你的问题,请参考以下文章

Java虚拟机——运行时的数据区域

VMware运行时“内部错误”的解决方法

JVM(java 虚拟机)

使用 vagrant 在桌面环境下运行虚拟机

win10下hyper-v新建的虚拟机服务无法启动,错误代码0x80070057,这样怎么办?

vmware vc 6.0 在打开虚拟机控制台时,提示错误。如图所示。如何解决啊