Re: [PATCH 0/2] ftrace: updates to tip

From: Steven Rostedt
Date: Fri Jan 16 2009 - 09:32:45 EST



On Fri, 16 Jan 2009, Ingo Molnar wrote:

>
> * Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:
>
> > Ingo,
> >
> > The first patch is critical, and needs to stay with trace_output.c Not
> > that critical since trace_output.c is not in mainline yet.
> >
> > The second patch gives the ability to stack trace functions. I've been
> > leery about adding this and still keep it a separate option from the
> > "stacktrace" that already exists. This is because when enabled with no
> > filtering, the lag between typing and seeing what is typed can be up to
> > 10 seconds or more.
>
> Btw., is this true even if frame pointers are enabled? When frame pointers
> are disabled we scan the full kernel stack => that can be quite slow if
> every kernel function is traced ;-)

After making my latest changes, I see a half sec lag. I don't know
why it was so slow before. But I do have all the debug features enabled
which would also slow things down quite a bit (lockdep, et. al)

>
> > I made the function stack trace an option attached to the function
> > tracer, so it must be enabled after the function tracer has been set.
> > This still needs to be updated in ftrace.txt.
>
> maybe we could drive this via the filter API? Something like:
>
> echo "*btrfs*:stacktrace" >> set_filter_functions
>
> Would automatically mean that those functions will all generate
> stacktraces too. Note how safe this API is by default: the filter is used
> for a narrow scope of functions anwyay. To get it for all kernel functions
> one would have to do:
>
> echo "*:stacktrace" >> set_filter_functions
>
> Which one cannot do accidentally.
>
> What do you think?

Now that I see only a 1/2 sec lag, do you still think this is necessary?

Maybe I should go back and see why it was so bad before?

But I do notice that not all functions produce a valid stack trace. Maybe
it would be better to add that api :-?

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