[PATCH tip 0/3] tracing/blkftrace improvements

From: Arnaldo Carvalho de Melo
Date: Mon Feb 02 2009 - 17:29:43 EST


Em Fri, Jan 30, 2009 at 03:21:02PM -0200, Arnaldo Carvalho de Melo escreveu:
> Em Fri, Jan 30, 2009 at 11:56:41AM -0500, Steven Rostedt escreveu:
> >
> > Frederic and Arnaldo,
> >
> > I'm fine with this change. Are there other changes you are going to put on
> > top of this, or should I wait for new stuff before pulling it in and
> > sendingo it to Ingo?
>
> Steve, please wait a bit, I'm reworking these changes so that they have
> a first solid user in blktrace, I'll post it later today.

OK, here it is, please take a look to see if it is acceptable.

Frederic, I kept you as the author for the first patch, as I just
trimmed it a little bit, lemme know if this is OK with you.

I removed the callbacks from the patch Frederic submitted, I think its
better to have the functions as a library, i.e. if a tracer wants to
disable the standard context info for one of its callbacks, it can just
call the function for the callbacks it wants.

Then I converted the tracer_event print callbacks to match the struct
trace print callback parameter list, i.e. to pass the trace_iterator,
from where we can get the trace_seq and the trace_entry, as well as
other stuff such as the timestamp.

The last patch makes use of this changes in blktrace, to provide a
binary trace that doesn't use the standard context info and that uses
the timestamp from the trace_iterator to synthesize most of the data
expected by the userspace blktrace utilities.

In the end I think I'll have to have the per cpu sequence numbers in the
ftrace plugin to be able to provide exactly what the userspace utilities
expect as I couldn't find a way to get it from the ring_buffer or
tracing guts (struct trace_array, etc) :-\

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