LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
* [PATCH 0/3] A kernel tracing interface
@ 2007-10-02 18:55 David J. Wilder
0 siblings, 0 replies; 8+ messages in thread
From: David J. Wilder @ 2007-10-02 18:55 UTC (permalink / raw)
To: linux-kernel, akpm; +Cc: randy.dunlap, hch, systemtap
These patches provide a kernel tracing interface called "trace".
(update) Updated documentation and added configuration dependency
on KPROBES for trace sample code.
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.
Patches are against 2.6.23-rc8-mm2
Summary of patches:
[patch 1/3] Trace code and documentation
[patch 2/3] Relay Reset Consumed
[patch 3/3] Trace sample
Note: Patch 2/3 provides a service used by patch 1/3
thus must be applied first or at the same time.
Note: The following patches must be applied prior to 3/3.
[patch 3/5] Add samples subdir
http://lkml.org/lkml/2007/9/28/178
[patch 4/5] Linux Kernel Markers - Samples
http://lkml.org/lkml/2007/9/28/189
Signed-off-by: David Wilder <dwilder@us.ibm.com>
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 0/3] A kernel tracing interface
2008-02-29 5:36 ` K. Prasad
@ 2008-02-29 12:08 ` K. Prasad
0 siblings, 0 replies; 8+ messages in thread
From: K. Prasad @ 2008-02-29 12:08 UTC (permalink / raw)
To: dwilder
Cc: David Wilder, Andrew Morton, linux-kernel, systemtap, prasadav, hch
On Fri, Feb 29, 2008 at 11:06:05AM +0530, K. Prasad wrote:
> 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.
>
Also to let you know that I tested the patches (sent against
2.6.25-rc2-mm1) on a x86 machine and they've been working fine....
Thanks,
K.Prasad
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 0/3] A kernel tracing interface
2008-02-28 19:40 ` David Wilder
@ 2008-02-29 5:36 ` K. Prasad
2008-02-29 12:08 ` K. Prasad
0 siblings, 1 reply; 8+ messages in thread
From: K. Prasad @ 2008-02-29 5:36 UTC (permalink / raw)
To: David Wilder; +Cc: Andrew Morton, linux-kernel, systemtap, prasadav, hch
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
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 0/3] A kernel tracing interface
2008-02-28 10:04 ` Andrew Morton
@ 2008-02-28 19:40 ` David Wilder
2008-02-29 5:36 ` K. Prasad
0 siblings, 1 reply; 8+ messages in thread
From: David Wilder @ 2008-02-28 19:40 UTC (permalink / raw)
To: Andrew Morton; +Cc: linux-kernel, systemtap, prasadav, hch
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.
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
>
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 0/3] A kernel tracing interface
2008-02-26 22:38 David J. Wilder
@ 2008-02-28 10:04 ` Andrew Morton
2008-02-28 19:40 ` David Wilder
0 siblings, 1 reply; 8+ messages in thread
From: Andrew Morton @ 2008-02-28 10:04 UTC (permalink / raw)
To: David J. Wilder; +Cc: linux-kernel, systemtap, prasadav, hch
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?
Is there some userspace code available for people to test this? Maybe it's
mentioned and I missed it.
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 see it uses things from blktrace. Can blktrace be switched over to being
a client of this code?
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 0/3] A kernel tracing interface
@ 2008-02-26 22:38 David J. Wilder
2008-02-28 10:04 ` Andrew Morton
0 siblings, 1 reply; 8+ messages in thread
From: David J. Wilder @ 2008-02-26 22:38 UTC (permalink / raw)
To: linux-kernel, akpm; +Cc: systemtap, prasadav, hch
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.
Patches are built against 2.6.25-rc2-mm1.
Tested on: 2.6.25-rc3
Summary of patches:
[patch 1/3] Relay Reset Consumed
[patch 2/3] Trace code and documentation
[patch 3/3] Trace sample
Note: Patch 1/3 provides a service used by patch 2/3
thus must be applied first or at the same time.
Signed-off-by: David Wilder <dwilder@us.ibm.com>
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 0/3] A kernel tracing interface
@ 2007-11-13 1:02 David J. Wilder
0 siblings, 0 replies; 8+ messages in thread
From: David J. Wilder @ 2007-11-13 1:02 UTC (permalink / raw)
To: linux-kernel; +Cc: systemtap
These patches provide a kernel tracing interface called "trace".
ChangeLog:
-Added a new example that demonstrates per-cpu continuous tracing
of data generated by 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.
Patches are against 2.6.23-mm1
Summary of patches:
[patch 1/3] Relay Reset Consumed
[patch 2/3] Trace code and documentation
[patch 3/3] Trace samples
Note: Patch 1/3 provides a service used by patch 2/3
thus must be applied first or at the same time.
Note: The sem_watch example requires that /lib/semaphore-sleepers.c
is patched to add several markers around the semaphore primitives,
see the patch at: http://lkml.org/lkml/2007/11/12/279
Signed-off-by: David Wilder <dwilder@us.ibm.com>
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 0/3] A kernel tracing interface
@ 2007-10-02 16:33 David J. Wilder
0 siblings, 0 replies; 8+ messages in thread
From: David J. Wilder @ 2007-10-02 16:33 UTC (permalink / raw)
To: linux-kernel, akpm; +Cc: randy.dunlap, hch, systemtap
[PATCH 0/3] A kernel tracing interface - (updated)
These patches provide a kernel tracing interface called "trace".
(update) Fixed a notation in the trace documentation as pointed out by
Randy Dunlap. Updated references to prerequisite patches.
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.
Patches are against 2.6.23-rc8-mm2
Summary of patches:
[patch 1/3] Trace code and documentation
[patch 2/3] Relay Reset Consumed
[patch 3/3] Trace sample
Note: Patch 2/3 provides a service used by patch 1/3
thus must be applied first or at the same time.
Note: The following patches must be applied prior to 3/3.
[patch 3/5] Add samples subdir
http://lkml.org/lkml/2007/9/28/178
[patch 4/5] Linux Kernel Markers - Samples
http://lkml.org/lkml/2007/9/28/189
Signed-off-by: David Wilder <dwilder@us.ibm.com>
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2008-02-29 12:08 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-10-02 18:55 [PATCH 0/3] A kernel tracing interface David J. Wilder
-- strict thread matches above, loose matches on Subject: below --
2008-02-26 22:38 David J. Wilder
2008-02-28 10:04 ` Andrew Morton
2008-02-28 19:40 ` David Wilder
2008-02-29 5:36 ` K. Prasad
2008-02-29 12:08 ` K. Prasad
2007-11-13 1:02 David J. Wilder
2007-10-02 16:33 David J. Wilder
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).