Messages in this thread | | | Date | Mon, 9 Feb 2009 12:37:48 +0100 | From | Ingo Molnar <> | Subject | Re: [PATCH] tracing/function-graph-tracer: handle the leaf functions from trace_pipe |
| |
* Frederic Weisbecker <fweisbec@gmail.com> wrote:
> When one cat on the trace file, the leaf functions are printed without brackets: > > function(); > > whereas in the trace_pipe file we'll see the following: > > function() { > } > > This is because the ring_buffer handling is not the same between those two files. > On the trace file, when an entry is printed, the iterator advanced and then we can > check the next entry. > > There is no iterator with trace_pipe, the current entry to print has been peeked > and not consumed. So checking the next entry will still return the current one while > we don't consume it. > > This patch introduces a new value for the output callbacks to ask the tracing > core to not consume the current entry after printing it. > We need it because we will have to consume the current entry ourself to check the next one. > > Now the trace_pipe is able to handle well the leaf functions. > > Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com> > --- > kernel/trace/trace.c | 4 +- > kernel/trace/trace.h | 7 +++-- > kernel/trace/trace_functions_graph.c | 48 +++++++++++++++++++++------------ > 3 files changed, 36 insertions(+), 23 deletions(-)
Applied to tip/tracing/ftrace, thanks Frederic!
Ingo
| |