Re: [PATCH 0/7] tracing: bug fixes for tracing/filters

From: Frederic Weisbecker
Date: Sat Apr 11 2009 - 10:48:54 EST


On Sat, Apr 11, 2009 at 04:30:48AM -0500, Tom Zanussi wrote:
> Hi,
>
> On Sat, 2009-04-11 at 15:52 +0800, Li Zefan wrote:
> > This patchset fixes some bugs in tracing/filters. Most of the change
> > goes to the last patch, and others are small ones.
> >
>
> At first glance, they look good and fix real problems - thanks for
> fixing them. Re patch 7, there's been some discussion about using rcu
> for this. See:
>
> http://lkml.org/lkml/2009/4/5/46
>
> >From that discussion, it seems some non-trivial changes to rcu would be
> needed for this. I'm playing around with a different idea now to
> hopefully avoid the need for that, or the other approach mentioned, of
> temporarily stopping tracing while removing/changing the filters.
>
> Basically my thought is to avoid the problem by not allocating or
> destroying the preds when removing filters but instead switch out the
> pred->fns with a nop version while keeping the fields intact for awhile.
> I think that will work for removing filters, but I still need to think
> about how it would (or would not) work for replacing them.
>
> Tom



It would be sort of reinventing rcu :-)
Well, Paul proposed something recently, hmm I should double check
this discussion.

Anyway, the fixes from Li (other than 4 and 7 for which we have comments)
look very good!

Frederic.



>
> > Maybe 3rd to 6th patches can be regarded as small enhancements instead
> > of bug fixes? But they are behavioural changes.
> >
> >
> > [PATCH 1/7] tracing/filters: NUL-terminate user input filter
> > [PATCH 2/7] tracing/filters: fix NULL pointer dereference
> > [PATCH 3/7] tracing/filters: allow user input integer to be oct or hex
> > [PATCH 4/7] tracing/filters: allow user to specify a filter val to be string
> > [PATCH 5/7] tracing/filters: disallow newline as delimeter
> > [PATCH 6/7] tracing/filters: return proper error code when writing filter file
> > [PATCH 7/7] tracing/filters: make filter preds RCU safe
> >
> > kernel/trace/trace.h | 6 +-
> > kernel/trace/trace_events.c | 16 +++--
> > kernel/trace/trace_events_filter.c | 131 ++++++++++++++++++++++++++---------
> > kernel/trace/trace_events_stage_3.h | 10 +++-
> > 4 files changed, 121 insertions(+), 42 deletions(-)
> > ---
>

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