lkml.org 
[lkml]   [2008]   [Aug]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [Patch 0/2] Renaming 'trace' to 'relay' and enhancements to 'relay'
On Wed, Aug 06, 2008 at 11:08:10AM -0400, Frank Ch. Eigler wrote:
> Andrew Morton <akpm@linux-foundation.org> writes:
>
> > [...]
> >> Please find the patches that enhance the 'trace' infrastructure
> >> (available in the -mm tree) and which introduce two new APIs
> >> relay_dump() and relay_printk().
> >> [...]
>
> > I'm a bit perplexed by these trace patches
> > (http://userweb.kernel.org/~akpm/mmotm/broken-out/trace-code [...]
> > Is it useful? Will it be useful? [...] I haven't heard much noise
> > about it and I'm struggling to justify merging it.
>
> Right.
>
> > Also, it's starting to look somewhat similar to ftrace, which also
> > provides sort of high-bandwidth per-cpu channels into userspace for
> > tracing purposes.
>
> Perhaps ftrace ought to use this facility for its debugfs-facing bulk
> data interface rather than an internal one that cannot be used by
> anyone else. Perhaps lttng could use it. Systemtap could. I believe
> a grand unification at this level was the idea.
>

Hi Andrew,
The 'relay_printk' and 'relay_dump' interfaces were meant to
provide clutter-free tracing interface for the user who does not want to
care much beyond getting his trace output to user-space. It greatly
helps reduce the amount of work that a tracer needs to perform to setup
and tear-down. For e.g. when the Block I/O tracing code in
block/blktrace.c was converted to use these interfaces they resulted in
code-reduction of ~130 lines (http://lkml.org/lkml/2008/5/16/318).

The default values can work fine for most tunables and are also exposed
to the user for overriding them.

These interfaces will be helpful in almost all non-blocking tracers
(unlike usbmon which displays information in real-time) and uses the
scalable infrastructure provided by 'relay'.

As pointed out by Frank earlier, most tracers (including ftrace) can be
made to use the above-mentioned interfaces resulting in substantial
savings in terms of LoC and increasing modularity/code re-usability.

Thanks,
K.Prasad



\
 
 \ /
  Last update: 2008-08-08 05:55    [W:0.060 / U:4.936 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site