Messages in this thread | | | Date | Wed, 15 Dec 2004 00:41:56 +0100 | From | Andrea Arcangeli <> | Subject | Re: [patch, 2.6.10-rc3] safe_hlt() & NMIs |
| |
On Tue, Dec 14, 2004 at 11:47:06PM +0100, Ingo Molnar wrote: > find the correct patch below. I've tested it with an NMI watchdog > frequency artificially increased to 10 KHz, and i've instrumented the
Nice test, it'd be nice to trigger it in real life.
on the lines of the 64k movl ss, I wonder if we could create an huge piece of memory like this:
new_htl: cli sti htl cli sti htl [..] jmp original_hlt
and to call new_htl from original_hlt instead of sti;hlt. A dozen megs of the above should boost the probability of getting interrupted in "hlt" quite a bit.
However even if the nmi can execute on top of the "hlt" instruction, it doesn't necessairly mean the next pending irq will execute before executing 'hlt' too, so it'd need a bit more of instrumentation to as well track down the race as happening (it's not enough to see the branch in the nmi handler to be taken). The additional instrumentation should be quite easy though, just copying the same nmi code to the irq handler should do the trick. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |