Re: [PATCH v3] pstore/ftrace: Convert to its own enable/disabledebugfs knob

From: Steven Rostedt
Date: Tue Aug 21 2012 - 21:07:18 EST


On Mon, 2012-08-20 at 18:46 -0700, Anton Vorontsov wrote:
> On Wed, Jul 18, 2012 at 12:30:52PM -0700, Anton Vorontsov wrote:
> > With this patch we no longer reuse function tracer infrastructure, now
> > we register our own tracer back-end via a debugfs knob.
> >
> > It's a bit more code, but that is the only downside. On the bright side we
> > have:
> >
> > - Ability to make persistent_ram module removable (when needed, we can
> > move ftrace_ops struct into a module). Note that persistent_ram is still
> > not removable for other reasons, but with this patch it's just one
> > thing less to worry about;
> >
> > - Pstore part is more isolated from the generic function tracer. We tried
> > it already by registering our own tracer in available_tracers, but that
> > way we're loosing ability to see the traces while we record them to
> > pstore. This solution is somewhere in the middle: we only register
> > "internal ftracer" back-end, but not the "front-end";
> >
> > - When there is only pstore tracing enabled, the kernel will only write
> > to the pstore buffer, omitting function tracer buffer (which, of course,
> > still can be enabled via 'echo function > current_tracer').
> >
> > Suggested-by: Steven Rostedt <rostedt@xxxxxxxxxxx>
> > Signed-off-by: Anton Vorontsov <anton.vorontsov@xxxxxxxxxx>
> > ---
>
> Hi Steven,
>
> Unless there are any issues, may I take the patch via linux-pstore.git
> tree?

I'm fine with it. I know there was some issues about recursion
protection and I said that the function tracer now has its own
protection where you don't need to worry about it. I was hoping that
code would make it into 3.6, but Linus opened the merge window the day
after I posted the final version. Which I figured was too close to the
merge window to push for 3.6 (lots of changes occurred, and I wanted it
vetted in linux-next for a bit).

Now those changes are queued for 3.7 and are currently in the tip tree.
You can supply your own temporary recursion protection to the function
tracer callback, or wait till my changes make it into Linus's tree.

Specifically, see commit 4740974a6844156c14d741b0080b59d275679a23 (in
tip.git).

-- Steve


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