Re: NMI handling rework for x86

From: John Levon (levon@movementarian.org)
Date: Fri Nov 15 2002 - 14:28:42 EST


[cc trimmed]

On Fri, Nov 15, 2002 at 01:00:30PM -0600, Corey Minyard wrote:

> If the NMI watchdog doesn't handle an interrupt, it will not re-enable
> the watchdog (in local APIC mode). If there is no other source of NMIs,
> then it will never run. It will get hit when the timer wraps around, I
> guess, but that could be a LONG time.

oprofile enabled: source of NMIs, check for apic irqs gets triggered,
all is OK

oprofile disabled: oprofile disable restores the perfctr settings, so
NMI watchdog is as before, all is OK

So this patch actually allows the NMI watchdog to work when oprofile is
running, which it didn't before, which is neat.

> I have attached another patch, this one fixes my stupid bug in
> dummy_watchdog_reset and also adds code to the NMI watchdog to not

OK great.

> I have also created a kernel module that loops requesting and releasing
> the NMI, and counting the number of NMIs that actually get hit by the
> handler that is installed.. This is on a dual 2.8GHZ Pentium 4 machine
> with hyperthreading (so 4 processors, sort of). I have six processes
> doing the request/release and some other processes eating CPU on each
> processor. This has been running for almost three hours, about
> 10,000,000 NMIs have occurred (around 1000/sec). Around 4700 NMIs have
> been caught by the handler, meaning that it was a close race between the
> removal and the NMI occurring. So it looks good.

Can you send me the test module so I don't have to bother writing one
myself ?

I'll try to test this weekend

regards
john
-
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/



This archive was generated by hypermail 2b29 : Fri Nov 15 2002 - 22:00:39 EST