From owner-freebsd-dtrace@FreeBSD.ORG Thu Oct 10 04:25:48 2013 Return-Path: Delivered-To: dtrace@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id B878AB7C; Thu, 10 Oct 2013 04:25:48 +0000 (UTC) (envelope-from markjdb@gmail.com) Received: from mail-ie0-x236.google.com (mail-ie0-x236.google.com [IPv6:2607:f8b0:4001:c03::236]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 7FD222C24; Thu, 10 Oct 2013 04:25:48 +0000 (UTC) Received: by mail-ie0-f182.google.com with SMTP id as1so3181110iec.27 for ; Wed, 09 Oct 2013 21:25:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:date:from:to:cc:subject:message-id:references:mime-version :content-type:content-disposition:content-transfer-encoding :in-reply-to:user-agent; bh=8eeTrFobr7CfNdsc1knSa8zDSI7F3eksUosobb20FUY=; b=qUD0du7LS1KwHT9R7bWrZ851QHJgbw+48LXUk3VeI2FJorjdyRGQgTGeh35i+gRdCf rdMaEuseZnpKPE3ltXTphaLmuCOFfGctwTzc5tr+eCbg0bEzl9DbCQ9+Ly3lt3SLS3Pt KfR6Znh4z5LeRaR45KI+PW5ymLeNuoOMGMDg3M8Ps+X1lHSgKZRi13h5AFEDl+l+O5Y+ 6PdVBF4PTOX+LLGakwxCTcOsVf9W5R70eXSHwKoozj7YXpDeLOnMxJaX9sI4spg4pLgP znEt8XtAM5Xhh+Lj3tJXFbGkGyTEeopiQoAoj7b8FSKr/530q+fz5YvKLW6VbOt5WIW2 ySpw== X-Received: by 10.50.55.40 with SMTP id o8mr4819917igp.25.1381379147777; Wed, 09 Oct 2013 21:25:47 -0700 (PDT) Received: from raichu (24-212-218-13.cable.teksavvy.com. [24.212.218.13]) by mx.google.com with ESMTPSA id ih14sm11299358igb.7.1969.12.31.16.00.00 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Wed, 09 Oct 2013 21:25:47 -0700 (PDT) Sender: Mark Johnston Date: Thu, 10 Oct 2013 00:25:45 -0400 From: Mark Johnston To: Pedro Giffuni Subject: Re: Dtrace providers wanted list Message-ID: <20131010042544.GB65451@raichu> References: <52546385.2050203@FreeBSD.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <52546385.2050203@FreeBSD.org> User-Agent: Mutt/1.5.21 (2010-09-15) Cc: dtrace@FreeBSD.org X-BeenThere: freebsd-dtrace@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "A discussion list for developers working on DTrace in FreeBSD." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 10 Oct 2013 04:25:48 -0000 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. ..." > > > Next in the list would be a scsi provider. I came out with this > introductory post to the scsi list a while ago: > > http://docs.freebsd.org/cgi/mid.cgi?51870B8F.5040306 > > There is more documentation on the net for the specific iscsi provider. > For example: > > http://dtrace.org/blogs/ahl/2007/07/04/iscsi-dtrace-provider-and-more-to-come/ > http://www.solarisinternals.com/wiki/index.php/DTrace_Topics_iSCSI > > > The third critical provider that IMHO we must have is the CPU > Performance Counter (CPC) Provider: > https://blogs.oracle.com/jonh/entry/finally_dtrace_meets_the_cpu I've started working on this one, but I don't have much to say about it yet. > > 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. -Mark