DPDK使用igb_uio、ixgbe驱动配置RX中断后epoll无响应问题
可优先排查的明显遗漏项
- 确认igb_uio驱动加载参数正确,必须启用MSI-X中断支持:加载时需添加参数
intr_mode=1,若内核启动参数存在pci=nomsi会导致网卡无法申请中断,直接造成/proc/interrupts无对应中断项。 - 确认配置顺序完全正确:必须严格按照
rte_eth_dev_configure->rte_eth_rx_queue_setup-> 配置RX队列中断 ->rte_eth_dev_start的顺序执行,若在端口启动后再注册中断,ixgbe驱动不会更新中断掩码,配置直接失效。 - 确认DPDK编译配置开启了RX中断支持:部分版本默认关闭
CONFIG_RTE_ETHDEV_RX_INTERRUPT配置项,若未开启,你代码中的中断配置接口会直接返回0但无实际生效逻辑。 - 确认端口配置未开启与中断冲突的特性:若
port_conf.rxmode.offloads开启了DEV_RX_OFFLOAD_SCATTER或者端口配置了多队列RSS的同时未给每个队列单独注册中断,也会导致全局RX中断被屏蔽。
内容的提问来源于stack exchange,提问作者Jack Humphries
相关产品推荐
相关产品推荐

