Jan Kiszka wrote: > Jiajun kindly provided me a RHEL kernel and initrd (2.6.18-53-el5) which > I ran for a while (or booted a few times) to trigger the hang. Basically > you need high IRQ load (preferably via LAPIC, to exploit that un-acked > IRQs will block low-prio IRQs as well) + high NMI load (e.g. via NMI > watchdog). > I was able to reproduce it easily by zapping the mmu every second. Attached is a patch the fixes it for me. Basically it avoids the nmi path if an interrupt is being injected. This is closer to my event queue plan, and also is similar to what the code does today with exceptions (avoid ->inject_pending_irq() if an exception is pending). Please review (and test if possible). -- error compiling committee.c: too many arguments to function