Handling NMI in a kernel module

From: Isabelle, Francois (Francois.Isabelle@ca.kontron.com)
Date: Tue Jul 23 2002 - 12:37:01 EST


Is it possible to request_nmi() the way you can request_irq() from a kernel
driver on the i386 arch?

Our hardware watchdog is dual stage and can generate NMI on first stage ,
our cPCI handle switch can also be used for Hot swap request via NMI.
I'ld like to make use of this, I noticed cpqhealth module already
implemented some nmi handling but this driver is close sourced.

Should we patch in i386/kernel/traps.c to add a callback to our stuff in
unkown_nmi_error().

I'ld like my driver to register a callback there, what about maintaining a
list of user callback functions which could be registered via:
 
request_nmi(int option, void (*hander)(void *dev_id, struct pt_regs *regs),
unsigned long flags, const char *dev_name, void *dev_id);

where option could take meaning such as
 - prepend : place at start of nmi callback functions
 - append : place at end of nmi callback functions
 - truncate : replace callback chain

Is there any standard mecanism to implement such features( dual stage
watchdog ) ?

Comments are welcome.

Francois Isabelle
Francois.Isabelle@ca.kontron.com
Kontron Canada Inc

 
 

-
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 : Tue Jul 23 2002 - 22:00:44 EST