Messages in this thread | | | Date | Thu, 24 Oct 2002 19:04:35 +0100 | From | John Levon <> | Subject | Re: [PATCH] NMI request/release, version 5 - I think this one's ready |
| |
On Thu, Oct 24, 2002 at 12:43:50PM -0500, Corey Minyard wrote:
> #define NOTIFY_DONE 0x0000 /* Don't care */ > #define NOTIFY_OK 0x0001 /* Suits me */ > #define NOTIFY_STOP_MASK 0x8000 /* Don't call further */ > > I'mt taking these to mean that NOTIFY_DONE means you didn't handle it, > NOTIFY_OK means you did handle it, and you "or" on NOTIFY_STOP_MASK if > you want it to stop. I'm thinking that stopping is probably a bad idea, > if the NMI is really edge triggered.
> There's a comment in do_nmi() that says that the NMI is edge triggered.
So there is. Darn. You could special case default_do_nmi, only printing out "Unknown NMI" iff the reason inb() check fails, /and/ no previous handlers set handled. Theoretically we have to take the cost of the inb() every time otherwise we can lose one of the NMISC-based things in default_do_nmi ... I can always see if this makes a noticable practical difference for oprofile under high interrupt load
(I also need to be able to remove the NMI watchdog handler, but that's an oprofile-specific problem).
Perhaps things will end being best to leave the current fast-path thing, but we should make sure that we've explored the possibilities of removing it first ;)
thanks john
-- "This is playing, not work, therefore it's not a waste of time." - Zath - 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/
| |