Messages in this thread | | | Date | Sun, 27 Apr 2008 22:29:25 +0300 | From | Pekka Paalanen <> | Subject | [PATCH 0/5] updates to ftrace framework and mmiotrace |
| |
Hello all,
here starts a little patch series that finally makes mmiotrace produce good trace logs with the ftrace framework. There are some caveats which I note below. Also, the marker feature (as in inserting user comments into the log) is still missing.
I believe I should try to make a full patch containing everything of mmiotrace for review, but it might be tricky and not apply to any public git tree, as it depends on new features in sched-devel, especially ftrace. We'll see.
On Sat, 26 Apr 2008 20:33:06 +0300 Pekka Paalanen <pq@iki.fi> wrote:
> On Mon, 21 Apr 2008 17:09:37 -0400 > Steven Rostedt <rostedt@goodmis.org> wrote: > > > This patch adds a method for open_pipe and open_read to the pluggins > > so that they can add a header to the trace pipe call. > > > > Signed-off-by: Steven Rostedt <srostedt@redhat.com> > > In addition to this, I think I need tracer::close method called on > tracing_release_pipe(). Use case: the reader closes the pipe before > I have printed all of my header, i.e. walked through all PCI devices, > so I need to properly destroy trace_iterator::private.
This is still broken. The close method is there, but it is not called, as far as I can tell.
> I also intend to use trace_iterator::seq for printing my header, so I > am looking if I can reuse code from tracing_read_pipe(). Looks like I'll > extract the "return any leftover data" part into a separate function.
This resulted in the function trace_seq_to_user() which comes in the first patch. Just like the code I refactored, it does not touch filp or ppos. I trust the original author better than myself in this one :-)
> To check trace_iterator::overrun, I'd like to be able to use > for_each_tracing_cpu(), but that is local to trace.c.
I'm using for_each_online_cpu() and trace_iterator::overrun for now. It works, but I think the "events lost" trace log messages come too late, like I explained earlier. On the other hand, the precise point in the stream is not important, if one is aiming for a complete trace.
The patches will follow.
Thanks.
-- Pekka Paalanen http://www.iki.fi/pq/
| |