shanehan 发表于 2012-03-07 15:39

求解CentOS系统出现kernel: Disabling IRQ #16

系统:CentOS
内核版本: Linux localhost.localdomain 2.6.32-220.el6.x86_64 #1 SMP Tue Dec 6 19:48:22 GMT 2011 x86_64 x86_64 x86_64 GNU/Linux

网卡就是比较普通的realtek,公司很多windows机都是这种卡。

现象:
在这台linux机器上运行了一些服务器程序,经过一段时间(可能是几个小时到十几个小时),就会出现一个系统的messga:
kernel: Disabling IRQ #16

然后ping网关,时间从100ms每次递减1ms,直到正常值后,又从100ms开始递减(偶尔出现ping值一直是99ms),总之本来ping值一直在1ms以下,现在就一直不正常了。

查看系统日志发现以下信息:


和这个帖子几乎一样的问题:
http://phorum.study-area.org/index.php/topic,65399.0.html

有没有朋友遇到过,请指教原因以及解决方法!!

crspo 发表于 2012-03-07 15:54

1 cat /proc/interrupts 看看是不是有其他设备共享8139的irq
2 使用irqpoll看看能不能解决问题。

shanehan 发表于 2012-03-07 16:39

网络已经重启了,再出现的时候,我看看

shanehan 发表于 2012-03-07 19:04

cat /proc/interrupts 是只有一个设备的
16:      44047          0          0          0   555955    4500003          0          0   IO-APIC-fasteoi   eth1

加了irqpoll选项,目前还没有再出现过,这个选项到底是什么意思?网上找了找,也没有找到太看得明白的答案

crspo 发表于 2012-03-08 11:09

回复 4# shanehan


    irqpoll的作用就是当kernel发现有未被处理的irq时,会尝试所有注册的irq handler而不仅仅8139的那个irq handler.
    看起来可能是其他设备的irq被错误的路由到了8139too的中断处理程序,可能是其他设备本身或者driver的问题。

shanehan 发表于 2012-03-09 09:40

谢谢,我在内核启动参数上加了irqpoll,不过五个小时前又出现了这个问题,还要继续找问题

yizuwei520 发表于 2012-11-05 12:28

我的也出现这样类似的问题了:
50:       6253      93747   IO-APIC-levelehci_hcd:usb2
应该是usb接口的问题?

freescale512 发表于 2015-01-27 13:59

回复 2# crspo


    我的也出现了类似的问题:message from syslogd@ at localhost kernel: Disabling IRQ #169 ,怎么加你说的那个irqpoll???谢啦
页: [1]
查看完整版本: 求解CentOS系统出现kernel: Disabling IRQ #16