summaryrefslogtreecommitdiffstats
path: root/sys/sys/dtrace_bsd.h
Commit message (Collapse)AuthorAgeFilesLines
* MFC r275576: remove opensolaris cyclic code, replace with high-precision ↵avg2015-05-111-9/+0
| | | | callouts
* MFC r266826, r266827markj2014-08-091-3/+5
| | | | | Move some duplicated hook definitions from machine-dependent files to kern_dtrace.c.
* MFC r257417: Remove references to an unused fasttrap probe hookavg2014-02-171-2/+0
|
* Initial commit of an I/O provider for DTrace on FreeBSD.gnn2012-07-111-0/+19
| | | | | | | | | | | | These probes are most useful when looking into the structures they provide, which are listed in io.d. For example: dtrace -n 'io:genunix::start { printf("%d\n", args[0]->bio_bcount); }' Note that the I/O systems in FreeBSD and Solaris/Illumos are sufficiently different that there is not a 1:1 mapping from scripts that work with one to the other. MFC after: 1 month
* Add DTrace support to the new NFS client. This is essentiallyrmacklem2011-06-181-3/+22
| | | | | | | cloned from the old NFS client, plus additions for NFSv4. A review of this code is in progress, however it was felt by the reviewer that it could go in now, before code slush. Any changes required by the review can be committed as bug fixes later.
* better integrate cyclic module with clocksource/eventtimer subsystemavg2011-05-161-7/+2
| | | | | | | | | | Now in the case when one-shot timers are used cyclic events should fire closer to theier scheduled times. As the cyclic is currently used only to drive DTrace profile provider, this is the area where the change makes a difference. Reviewed by: mav (earlier version, a while ago) X-MFC after: clocksource/eventtimer subsystem
* Add the necessary DTrace function pointers.rpaulo2010-08-251-0/+9
| | | | Sponsored by: The FreeBSD Foundation
* Rename the cyclic global variable lapic_cyclic_clock_func to justrpaulo2010-04-201-1/+1
| | | | | cyclic_clock_func. This will make more sense when we start developing non x86 cyclic version.
* Add DTrace probes to the NFS access and attribute caches. Access cacherwatson2009-03-241-5/+45
| | | | | | | | | | | | | | | | | | | | | | | | | events are: nfsclient:accesscache:flush:done nfsclient:accesscache:get:hit nfsclient:accesscache:get:miss nfsclient:accesscache:load:done They pass the vnode, uid, and requested or loaded access mode (if any); the load event may also report a load error if the RPC fails. The attribute cache events are: nfsclient:attrcache:flush:done nfsclient:attrcache:get:hit nfsclient:attrcache:get:miss nfsclient:attrcache:load:done They pass the vnode, optionally the vattr if one is present (hit or load), and in the case of a load event, also a possible RPC error. MFC after: 1 month Sponsored by: Google, Inc.
* Add dtnfsclient, a first cut at an NFSv2/v3 client reuest DTracerwatson2009-03-221-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | provider. The NFS client exposes 'start' and 'done' probes for NFSv2 and NFSv3 RPCs when using the new RPC implementation, passing in the vnode, mbuf chain, credential, and NFSv2 or NFSv3 procedure number. For 'done' probes, the error number is also available. Probes are named in the following way: ... nfsclient:nfs2:write:start nfsclient:nfs2:write:done ... nfsclient:nfs3:access:start nfsclient:nfs3:access:done ... Access to the unmarshalled arguments is not easily available at this point in the stack, but the passed probe arguments are sufficient to to a lot of interesting things in practice. Technically, these probes may cover multiple RPC retransmits, and even transactions if the transaction ID change as a result of authentication failure or a jukebox error from the server, but usefully capture the intent of a single NFS request, such as access, getattr, write, etc. Typical use might involve profiling RPC latency by system call, number of RPCs, how often a getattr leads to a call to access, when failed access control checks occur, etc. More detailed RPC information might best be provided by adding a krpc provider. It would also be useful to add NFS client probes for events such as the access cache or attribute cache satisfying requests without an RPC. Sponsored by: Google, Inc. MFC after: 1 month
* Add the DTrace shim layer definitions.jb2008-05-171-0/+111
All shim hooks are defined here. This is the interface between BSD code in FreeBSD and CDDL code from OpenSolaris. The hooks defined here are pre-processed out from the source files when the KDTRACE_HOOKS kernel option isn't defined.
OpenPOWER on IntegriCloud