Re: [RFC][Patch] IBM Real-Time "SMI Free" mode drive -v2

From: john stultz
Date: Wed Dec 16 2009 - 20:39:34 EST


On Thu, 2009-12-17 at 00:09 +0100, Peter Zijlstra wrote:
> On Tue, 2009-12-15 at 12:09 -0800, Keith Mannthey wrote:
> > This driver supports the Real-Time Linux (RTL) BIOS feature. The RTL
> > feature allows non-fatal System Management Interrupts (SMIs) to be
> > disabled on supported IBM platforms.
> >
> >
> > The Device is presented as a special "_rtl_" table to the OS in the
> > Extended BIOS Data Area. There is a simple protocol for entering and
> > exiting the mode at runtime. This driver creates a simple sysfs
> > interface to allow a simple entry and exit from RTL mode in the
> > UFI/BIOS.
>
> Why not simply always run with these non-fatal SMIs disabled and provide
> their function through the OS proper?
>
> That way you don't need no silly switches and gain consistent platform
> behaviour.

Keith can probably correct me here if I'm wrong, but my understanding is
that the SMIs provide hardware error detection, that while non-fatal
are still important to the management of the system.

The hardware may be used with other OSes or older Linux distros that do
not provide a replacement for the SMI functionality. Further, disabling
the SMIs can limit other features like power-throttling by the hardware,
so its not something that can be always disabled in the hardware.

So this driver provides a switch to allow the System to notify the
hardware that the OS is capable of providing the error detection and is
taking that responsibility over.

The second piece required, which uses this interface to notify the BIOS
its taking over this responsibility, is the ibm-prtmd daemon. This is
the userland app that monitors the edac driver and sends the ipmi
messages to the management module.

thanks
-john

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