Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
DTRACE_IO(4)		     Kernel Interfaces Manual		    DTRACE_IO(4)

NAME
     dtrace_io -- a DTrace provider for tracing events related to disk I/O

SYNOPSIS
     io:::start(struct bio *, struct devstat *);

     io:::done(struct bio *, struct devstat *);

DESCRIPTION
     The  io  provider	allows the tracing of disk I/O events.	The io:::start()
     probe fires when a I/O request is about to be sent to the backing driver of
     a disk(9) object.	This occurs after all GEOM(4) transformations have  been
     performed	on  the request.  The io:::done() probe fires when a I/O request
     is completed.  Both probes take a struct bio * representing the I/O request
     as their first argument.  The second argument is a struct devstat * for the
     underlying disk(9) object.

ARGUMENTS
     The fields of struct bio are described in the g_bio(9) manual page, and the
     fields of struct devstat are  described  in  the  devstat(9)  manual  page.
     Translators  for  the  bufinfo_t  and  devinfo_t  D  types  are  defined in
     /usr/lib/dtrace/io.d.

FILES
     /usr/lib/dtrace/io.d  DTrace type and translator  definitions  for  the  io
			   provider.

EXAMPLES
     The following script shows a per-process breakdown of total I/O by disk de-
     vice:

	   #pragma D option quiet

	   io:::start
	   {
		   @[args[1]->device_name, execname, pid] = sum(args[0]->bio_length);
	   }

	   END
	   {
		   printf("%10s %20s %10s %15s\n", "DEVICE", "APP", "PID", "BYTES");
		   printa("%10s %20s %10d %15@d\n", @);
	   }

COMPATIBILITY
     This  provider  is not compatible with the io provider found in Solaris, as
     its probes use native FreeBSD argument types.

SEE ALSO
     dtrace(1), devstat(9), SDT(9)

HISTORY
     The io provider first appeared in FreeBSD 9.2 and 10.0.

AUTHORS
     This manual page was written by Mark Johnston <markj@FreeBSD.org>.

BUGS
     The io:::wait-start() and io:::wait-done() probes are not currently  imple-
     mented on FreeBSD.

FreeBSD ports 15.quarterly	October 26, 2025		    DTRACE_IO(4)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=dtrace_io&sektion=4&manpath=FreeBSD+15.1-RELEASE+and+Ports.quarterly>

home | help