Re: Re-implement MCE log ring buffer as per-CPU ring buffer

From: Robert Richter
Date: Fri Apr 24 2009 - 06:10:21 EST


On 24.04.09 14:06:50, Huang Ying wrote:
> On Wed, 2009-04-22 at 18:16 +0800, Robert Richter wrote:
> > On 22.04.09 11:22:59, Ingo Molnar wrote:
> > >
> > > * Huang Ying <ying.huang@xxxxxxxxx> wrote:
> > >
> > > > Re-implement MCE log ring buffer as per-CPU ring buffer for better
> > > > scalability. Basic design is as follow:
> > >
> > > Before changing anything substantial in the MCE code it would be
> > > necessary to clean up and then unify the 32-bit and 64-bit side of
> > > the MCE code first. (Which essentially means extending the
> > > 64-bit-only code to 32-bit)
> >
> > You may also want to consider to use the in-kernel ring_buffer api
> > (include/linux/ring_buffer.h).
>
> It seems that ring_buffer is not NMI-safe, while mcelog buffer will be
> used in NMI context and interrupt context. When will ring_buffer to be
> NMI-safe?

You can use it in nmi context with separate read and write
buffers. See this patch description:
6dad828b76c7224a22ddc9ce7aa495d994f03b31

Not sure if somebody will make the ring_buffer non-locking.

-Robert

--
Advanced Micro Devices, Inc.
Operating System Research Center
email: robert.richter@xxxxxxx

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