Re: [PATCH] Fix race in ring_buffer_consume(): Replacering_buffer_consume and ring_buffer_peek with ring_buffer_get_event

From: Ingo Molnar
Date: Fri Jan 02 2009 - 17:08:36 EST



* Indan Zupancic <indan@xxxxxx> wrote:

> On Mon, December 29, 2008 13:24, Ingo Molnar wrote:
> >
> > * Indan Zupancic <indan@xxxxxx> wrote:
> >
> >> Original mail was mangled, patch resent via git.
> >>
> >> Signed-off-by: Indan Zupancic <indan@xxxxxx>
> >> ---
> >> include/linux/ring_buffer.h | 4 +---
> >> kernel/trace/ring_buffer.c | 39
> >> ++++++++-------------------------------
> >> kernel/trace/trace.c | 15 ++++++++-------
> >> kernel/trace/trace_selftest.c | 2 +-
> >> 4 files changed, 18 insertions(+), 42 deletions(-)
> >
> > there's been a number of updates here - could you please do a patch
> > against tip/master:
> >
> > http://people.redhat.com/mingo/tip.git/README
>
> Thanks for that readme, now I discovered git remote, which is not
> mentioned often enough for some reason.
>
> A lot changed indeed, most importantly the race that I hit is
> fixed in tip by improved locking. Replace ring_buffer_consume()
> and ring_buffer_peek() with ring_buffer_get_event() or not is
> just a matter of taste now. Are you still interested in such a
> patch?

the code gets simpler and more readable, so why not? Steve, any
objections?

> (34 EXPORT_SYMBOL_GPLs in ring_buffer.c seems a bit excessive though.)

agreed.

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/