这是以下的输出cat /proc/irq/79/spurious
:
count 28
unhandled 0
last_unhandled 0 ms
这些参数在这里表示什么 - count
, last_unhandled
?该计数是否表示未注意到此中断的次数?
答案1
count
给出 IRQ 激发的总次数,以 100,000 为模;spurious
给出未处理事件的数量在最近的记忆中;并last_unhandled
存储最后一个未处理事件发生的 jiffies(自内核启动以来以毫秒为单位显示)。
其目的是跟踪虚假中断,并在它们发生过于频繁时将其考虑在内。当发生虚假中断时,当前时间(以 jiffies 为单位)将与上次未处理的时间进行比较,并且仅当先前的虚假中断足够近时,虚假计数器才会递增。因此,偶尔的虚假中断不会影响系统,而频繁的虚假中断最终会导致系统崩溃。IRQ 被禁用(以及内核日志中的一条消息):
如果前 100,000 个中断中的 99,900 个尚未处理,则假设 IRQ 以某种方式被卡住。放弃诊断并尝试关闭 IRQ。