对于hardlockup的检测,内核利用高精度定时器(hrtimer)和不可屏蔽中断(Non-maskable Interrupt,NMI)来检查长时间中断无响应的情况,也称为NMI Watchdog。基本原理是: - hrtimer周期性的产生时钟中断,中断处理函数更新计数器hrtimer_interrupts - PMU对cycle事件进行计数,周期性的溢出,触发PMI中断,PMI配置为不可屏蔽模式。
这是勘误表BDE104,NMI看门狗占用固定计数器,因此cycles必须使用可编程计数器。来自英特尔的至强D "规范...