Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 11 Jun 2006 18:38:09 +0000
From:      John Birrell <jb@what-creek.com>
To:        current@freebsd.org
Subject:   Re: DTrace SDT Provider not working?
Message-ID:  <20060611183809.GA60353@what-creek.com>
In-Reply-To: <20060611145351.221ec001@sol.hackerzberg.local>
References:  <20060611145351.221ec001@sol.hackerzberg.local>

next in thread | previous in thread | raw e-mail | index | archive | help

[ I forgot to copy current@ ]

On Sun, Jun 11, 2006 at 02:53:51PM +0200, Marius Nuennerich wrote:
>
> I tried to add the SDT Hooks for callout(9), see attached patch.
> > # dtrace -l -f callout
> >    ID   PROVIDER            MODULE                          FUNCTION NAME
> >     6        sdt            kernel                           callout entry
> >     7        sdt            kernel                           callout return
>
> however, a simple
>
> > # dtrace -n 'sdt:kernel:callout:entry{printf("1");}'
>
> prints that a probe is matched but nothing else, same for
> sdt:kernel:linker_load_module:entry and kldload'ing a module.
>
> I use the snapshot code you provided.
>
> Any idea where to look next?

Are you sure that the function is actually being called?

The version of code you have has the fbt provider restricted to just a
few probes. You could try changing the filter in that to allow it
to look at more functions. Be warned though that there are some that
aren't safe to instrument. I'm still tracking those down, so enabling
all probes with fbt::: is very unwise if you remove the filter I have
in there.

Using fbt you will be able to see what functions are being called
more easily. This might explain what is happening with the sdt code
you've added (which looks like it should work).

--
John Birrell




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060611183809.GA60353>