[RFC PATCH 1/3]] Add mtd panic_write function pointer

Richard Purdie rpurdie at rpsys.net
Wed Jan 30 05:03:03 EST 2008


On Wed, 2008-01-30 at 00:11 +0100, Jörn Engel wrote:
> On Tue, 29 January 2008 11:59:24 +0000, Richard Purdie wrote:
> > 
> > MTDs are well suited for logging critical data and the mtdoops driver
> > allows kernel panics/oops to be written to flash in a blackbox flight
> > recorder fashion allowing better debugging and analysis of crashes.
> > 
> > Any kernel oops in user context can be easily handled since the kernel
> > continues as normal and any queued mtd writes are scheduled. Any kernel
> > oops in interrupt context results in a panic and the delayed writes will
> > not be scheduled however. The existing mtd->write function cannot be
> > called in interrupt context so these messages can never be written to
> > flash.
> > 
> > This patch adds a panic_write function pointer that drivers can
> > optionally implement which can be called in interrupt context. It is
> > only intended to be called when its known the kernel is about to panic
> > and we need to write to succeed. Since the kernel is not going to be
> > running for much longer, this function can break locks and delay to
> > ensure the write succeeds (but not sleep).
> 
> I like the description.  So why is it not part of the patch proper?

You mean add it to mtd.h?

Richard






More information about the linux-mtd mailing list