This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
Re: [Ksummit-2008-discuss] DTrace
Hi -
On Sat, Jul 05, 2008 at 12:05:36PM +0200, Christoph Hellwig wrote:
> > Also, it would be really great if you could write probes in regular C,
> > some pseudo C language just messes up my mind.
>
> You can write probes in plain C, in fact I do this all the time. what's
> missing is a nice and easy to use channel to get the traces to userspace
> and interpret them, and helper for poking at kernel data structures.
Perhaps something like like this:
probe kernel.function("foobar") // or kernel.statement("*@dir/file.c:222")
{
probe_me_harder ($var1, $ptr->field)
}
%{
#include "linux/something.h"
%}
function probe_me_harder (v1, f1)
%{
struct something *s = (struct something*) THIS->v1;
struct something_else *w = (struct something_else*) THIS->f1;
call_some_safe_kernel_function__be_careful_out_there (s, w);
_stp_printf ("I did something fun with %p and %p\n", s, w);
%}
# stap -g probe.stp
I did something fun with 0xdick and 0xjane.
^C
- FChE