lkml.org 
[lkml]   [2008]   [Feb]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 0/3] A kernel tracing interface
On Thu, Feb 28, 2008 at 11:40:21AM -0800, David Wilder wrote:
> Andrew Morton wrote:
> >On Tue, 26 Feb 2008 14:38:37 -0800 "David J. Wilder" <dwilder@us.ibm.com>
> >wrote:
> >
> >>These patches provide a kernel tracing interface called "trace".
> >>
> >>ChangeLog:
> >>-Updated to 2.6.25-rc2-mm1
> >>-Removed sem_watch example, to hard to maintain.
> >>-Added a new example that demonstrates per-cpu continuous tracing
> >> of data generated using marker probes.
> >>-Removed inline from relay patch.
> >>-Moved examples into /sample directory.
> >>
> >>The motivation for "trace" is to:
> >>- Provide a simple set of tracing primitives that will utilize the high-
> >> performance and low-overhead of relayfs for passing traces data from
> >> kernel to user space.
> >>- Provide a common user interface for managing kernel traces.
> >>- Allow for binary as well as ascii trace data.
> >>- Incorporate features from the systemtap runtime that are
> >> useful to others.
> >
> >So... what's the story on this versus lttng?
>
> Trace is simpler to use and a smaller bit of code than lttng.
> It may not have all the features of lttng but it is good starting point
> that can be expanded upon. I have several users of trace that just
> wanted a simple way to get data out of the kernel without the overhead
> of lttng trace is working well for them. Trace also works well with
> markers and kprobes. For example systemtap is is using the basic trace
> code to gather data from kprobes and markers.
> >
> >Is there some userspace code available for people to test this? Maybe it's
> >mentioned and I missed it.
>
> I purposely designed trace so no special user code is required to gather
> trace data. Standard user utilities like cat, grep, sort and more is all
> that is needed. I show an example in /samples/trace/fork_trace.c.
>
> However since trace uses relay as its transport any user interfaces
> provided by relay can be used to read trace data. (documented in
> /Documentation/relay.txt)
>
> >
> >It'd be interesting to see a writeup of the proposed kernel<->userspace
> >interfaces. I see a description of kernel-internal interfaces, but how do
> >users use it?
>
> I will add some text in the documentation.
> >
> >I see it uses things from blktrace. Can blktrace be switched over to being
> >a client of this code?
>
> yep.
>
Dave,
I might also want to add to the discussion by stating that you
will find a user for the 'trace' infrastructure in the marker handler
code of the proposed markers for futex subsystem. I hope to post the
patches soon to the community.

Thanks,
K.Prasad



\
 
 \ /
  Last update: 2008-02-29 06:39    [W:0.052 / U:0.344 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site