Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 12 Oct 2013 10:32:03 -0500
From:      Pedro Giffuni <pfg@FreeBSD.org>
To:        Mark Johnston <markj@freebsd.org>
Cc:        dtrace@FreeBSD.org
Subject:   Re: Dtrace providers wanted list
Message-ID:  <52596B73.2050702@FreeBSD.org>
In-Reply-To: <20131010042544.GB65451@raichu>
References:  <52546385.2050203@FreeBSD.org> <20131010042544.GB65451@raichu>

next in thread | previous in thread | raw e-mail | index | archive | help
On 09.10.2013 23:25, Mark Johnston wrote:
> On Tue, Oct 08, 2013 at 02:56:53PM -0500, Pedro Giffuni wrote:
>> Hello;
>>
>> Sometime ago I looked around the list of Oracle's DTrace providers.
>>
>> https://wikis.oracle.com/display/DTrace/Providers
>>
>> We absolutely want them and although extremely useful as it is, DTrace
>> won't be complete until we have them all ;). For the time being we
>> should probably focus on getting the really critical ones though.
>>
>> The first in the list that we don't have that I think is critical is
>> mentioned in Brendan Gregg's FreeBSD specific blog post:
>>
>> http://dtrace.org/blogs/brendan/2013/09/25/the-use-method-freebsd-performance-checklist/
>>
>> "Tracing paging is tricker until the vminfo provider is added; you could
>> try tracing from swap_pager_putpages() and swap_pager_getpages(), but I
>> didn’t see an easy way to walk back to a thread struct; another approach
>> may be via vm_fault_hold(). Good luck. ..."

I started looking at this but it is somewhat more work than expected:
Solaris has a specific vminfo interface in sysinfo.h. It looks very handy
for providing general vm statistics but our vm is different and I am
not sure we want to go into implementing such interface. It depends
on a VM guru, anyways.

OTOH, I found the fsinfo provider:

https://bitbucket.org/illumos/illumos-gate/commits/5b50c2dcfdf948c4e4f0b880eb76210067e7af7c

Our VFS does have some similarity so this may be easier/doable, plus
it may be needed by the scsi and ZFS providers.

>> This is closely related to pmc(3) but obviously our implementation is
>> completely different from the Solaris one.
>>
>>
>> Well, just though I should share the above links in the hope of
>> motivating more DTrace provider porting. At this time our base Dtrace
>> port is pretty good but we have the chicken and egg problem where
>> developers don't know how useful DTrace really is because there is no
>> provider for their code.
> I think it's also important to have more and better documentation of
> existing providers. More providers are nice, but they're not as useful
> when their existence is not widely known or it's not clear how they
> might be used.
>
> I don't really like having links to an Oracle wiki page at least partly
> because none of the FreeBSD ports of those providers are 100% compatible.
> I've started writing man pages for the network providers; an example is
> here:
>
> http://people.freebsd.org/~markj/dtrace/dtrace-ip.4.txt
>
> But I'm open to other forms of documentation as well.

The Wiki would probably better while things settle.

Pedro.




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