`/proc/irq/.../spurious` 包含什么?

`/proc/irq/.../spurious` 包含什么?

这是以下的输出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。

相关内容