成都网站建设设计

将想法与焦点和您一起共享

关于DPDK17或18无法在CentOS6上绑定网卡问题的解决方案

问题:如题;主要出现在内核版本在2.6.37以下的系统,内核模块可以编译和插入,但是绑定网卡总是失败(message中给出的trace是说中断问题);
    后查找一些资源并对比了16的相关实现代码,发现其中有个标志送的有问题,修改后就可以正常绑定并且测试也正常,但还必须插入dca内核模块,方可运作,否则一直报io error。
    具体修改如下(17和18中的代码把一部分挪到了一个叫igbuio_pci_open的地方,注意中间部分;在igbuio_pci_open开始部分,直接reuturn 0): 

    source file: igb_uio.c
    function: igbuio_pci_probe

err = sysfs_create_group(&dev->dev.kobj, &dev_attr_grp);
if (err != 0)
     goto fail_release_iomem;

udev->mode = RTE_INTR_MODE_NONE;
#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 37)
     udev->info.irq = -2;
#else
     udev->info.irq = 0;
#endif

/* register uio driver */
err = uio_register_device(&dev->dev, &udev->info);

标题名称:关于DPDK17或18无法在CentOS6上绑定网卡问题的解决方案
文章出自:http://chengdu.cdxwcx.cn/article/pgshde.html