Re: Hardware Error Kernel Mini-Summit
From: Ingo Molnar
Date: Tue May 18 2010 - 15:30:59 EST
* Luck, Tony <tony.luck@xxxxxxxxx> wrote:
> > It makes sense to use the kernel's performance events
> > logging framework when we are logging events about how the
> > system performs.
>
> Perhaps it makes more sense to say that the Linux
> "performance events logging framework" has become more
> generic and is really now an "event logging framework".
Yeah, it essentially is.
> > Furthermore it's NMI safe, offers structured logging,
> > has various streaming, multiplexing and filtering
> > capabilities that come handy for RAS purposes and
> > more.
>
> Those of us present at the mini-summit were not familiar
> with all the features available. One area of concern was
> how to be sure that something is in fact listening to
> and logging the error events. My understanding is that
> if there is no process attached to an event, the kernel
> will just drop it. This is of particular concern
> because the kernel's first scan of the machine check
> banks occurs before there are any processes. So errors
> found early in boot (which might be saved fatal errors
> from before the boot) might be lost.
I proposed a (fairly straightforward) extension to which
Boris agreed: we can introduce 'persistent events', which
have task-less buffers attached to them, which will hold
(a configurable amount of) of events.
Those can then be picked up by a task later on and no
event is lost.
Would such a feature address your concern?
It would be useful not just for reliable error event
collection, it could also be used for things like the boot
tracer (which too deals with events that occur before
there are any user-space tasks to pick up events).
I.e. it fits into the whole scheme in a pretty natural,
multi-purpose way.
Thanks,
Ingo
--
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/