Re: Recoverable MCA interrupts from NMI handlers? IPMI and RCU?

From: H. Peter Anvin
Date: Fri Jun 06 2008 - 12:15:57 EST


Paul E. McKenney wrote:
Hello!

A couple of questions about the x86 architecture...

1. Can recoverable machine-check exceptions occur from within
NMI handlers? If so, there is a bug in preemptable RCU's
CONFIG_NO_HZ handling that could be fixed by a patch something
like the one shown below (untested, probably does not even
compile).


In theory, recoverable #MC's can occur anywhere. It's an exception.

2. Does the IPMI subsystem make use of RCU read-side primitives
from within SMI handlers? If so, we need the SMI handlers to
invoke rcu_irq_enter() upon entry and rcu_irq_exit() upon exit
when they are invoked from dynticks idle state. Or something
similar, depending on restrictions on code within SMI handlers.

Not sure about that one. I clearly need to look carefully into this... SMI is quite "special" in that it sets up an entirely new environment; the concept of executing kernel code at SMI level makes me want to run away and hide.

-hpa

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/