History log of /freebsd-10.0-release/usr.sbin/iostat/
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
259065 07-Dec-2013 gjb

- Copy stable/10 (r259064) to releng/10.0 as part of the
10.0-RELEASE cycle.
- Update __FreeBSD_version [1]
- Set branch name to -RC1

[1] 10.0-CURRENT __FreeBSD_version value ended at '55', so
start releng/10.0 at '100' so the branch is started with
a value ending in zero.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation

256281 10-Oct-2013 gjb

Copy head (r256279) to stable/10 as part of the 10.0-RELEASE cycle.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation


244271 15-Dec-2012 trociny

Change `iostat -Ix` to display total duration of transactions instead
of average duration, and total busy time instead of %.

This looks more useful when one runs `iostat -Ix` periodically to
collect statistics: e.g. now it is possible to calculate busy %
between two runs subtracting total busy times and dividing per time
period.

Average duration and % busy are still available via `iostat -x`.


228661 17-Dec-2011 dim

In usr.sbin/iostat/iostat.c, use printf format specifiers from
inttypes.h for u_int64_t's. While here, sort #include directives.

MFC after: 1 week


216372 11-Dec-2010 joel

Remove the advertising clause from UCB copyrighted files in usr.sbin. This
is in accordance with the information provided at
ftp://ftp.cs.berkeley.edu/pub/4bsd/README.Impt.License.Change


215786 24-Nov-2010 yar

Clarify a few details about iostat(8) behavior:

- The default repeat count for iostat(8) is 1 unless there
was a -w on the command line.

- A -x display doesn't include TTY or CPU stats by default
but they can be turned on with a -T or -C, respectively.

Submitted by: arundel (initial version)
Reviewed by: arundel
MFC after: 1 week


215425 17-Nov-2010 ivoras

Change "wait" banner to "qlen" to be more indicative of its purpose and to
be more inline with what gstat uses.

Reviewed by: gnn
Silence from: phk, keramida


211004 07-Aug-2010 yar

Clean up the style and markup of the paragraph on fractional wait intervals.

MFC after: 3 days


211003 07-Aug-2010 yar

Properly spell and mark up the name of kern.hz.

MFC after: 3 days


211001 07-Aug-2010 yar

Move the sentences telling the defaults for -c and -w
to where they belong. Previously they were misplaced,
i.e., swapped.

MFC after: 3 days


208510 24-May-2010 sbruno

Cleanup manpage as suggested by jhb@ to start new sentences on a new line.
MFC after: 2 Weeks


208460 23-May-2010 sbruno

Explain how the new sub-second interval from changeset:208389 works.

Approved by: scottl(mentor)
Obtained from: Yahoo Inc.
MFC after: 2 weeks


208389 21-May-2010 sbruno

Allow sub-second interval timings for iostat and vmstat.
e.g.
vmstat -w.5
iostat -w.5

Reviewed by: jhb
Approved by: scottl (mentor)
Obtained from: Yahoo Inc.
MFC after: 2 weeks


201390 02-Jan-2010 ed

The last big commit: let usr.sbin/ use WARNS=6 by default.


196254 15-Aug-2009 keramida

iostat: add a bit of space between tty in/out columns

The columns for tty input and output may bump against each other
if the tty output needs more than 5 columns. Add a bit of space
that pushes everything 1 column to the right, but also avoids the
problem.

Approved by: re (rwatson)


192570 21-May-2009 delphij

Use calloc().


182927 11-Sep-2008 adrian

Fix the device name spacing.

The old logic padded the device name out but assumed the unit number was one digit
long; this fails for things like SATA devices which (for me) begin at ad10.

Assemble the full device name in a temporary buffer and then calcluate padding
based on that string.


181881 19-Aug-2008 jhb

Use kvm_getcptime(3) to fetch the global CPU time stats from a crashdump
since the 'cp_time' symbol doesn't exist in recent kernels. This fixes
iostat and vmstat on crash dumps.

MFC after: 1 week


181878 19-Aug-2008 jhb

Pass the right pointer to bzero() when clearing cp_time.

MFC after: 1 week


175562 22-Jan-2008 keramida

Repeat iostat header after rows-3 instead of a hardcoded 20.

Use ioctl() to get the window size in iostat(8), and force a new
header to be prepended to the output every time the current
window size changes. Change the number of lines before each
header to `rows - 3' when the terminal is resized, so that the
full terminal length can be used for output lines.

PR: bin/119705
Submitted by: keramida
Approved by: maxim
MFC after: 2 weeks


175252 12-Jan-2008 maxim

o Fix a typo. errx() -> err().

Submitted by: das


175250 12-Jan-2008 maxim

o Plug a memory leak: do not forget to free asprintf(3) allocated
memory.

PR: bin/119608
Submitted by: peter.schuller
MFC after: 1 week


174649 16-Dec-2007 maxim

o Get missed "%" in output back.

Submitted by: sem
MFC after: 1 week


171709 03-Aug-2007 maxim

o With -x switch do not pay attention at the hardcoded limit of 3 devices and dump stats for all devices in the system. User can still limit iostat -x by -n switch.

Spotted by: Igor Sysoev
Submitted by: kensmith
Approved by: re (kensmith)
MFC after: 2 weeks


169558 14-May-2007 maxim

o Re-indent long lines.

Style(9) wisdom from: bde


169506 12-May-2007 maxim

o Fix several style bugs in the previous commit.

Prodded by: bde


169496 12-May-2007 maxim

o Make iostat -Ix work: print per-interval I/O extended statistics.

PR: bin/112559
Submitted by: Dan Nelson
MFC after: 2 weeks


166541 06-Feb-2007 jhb

Make iostat(8) fully work on crash dumps again (broken since 5.0):
- Pass the address of the variable we are reading to kvm_read() rather
than the index into the nlist array.
- Properly report errors from kvm_read() which returns -1 on error, not
0.

MFC after: 3 days


162806 29-Sep-2006 ru

Markup fixes.


157802 16-Apr-2006 maxim

o De-register local vars.


157801 16-Apr-2006 maxim

o Trim EOL whitespaces and tabs, replace eight w/s by tabs.
No functional changes.


157800 16-Apr-2006 maxim

o Implement Solaris-like -x flag: show extended disk statistics.
o Implement Solaris-like -z flag: omit lines for devices with no activity.
o iostat.8: describe -x and -z flags, Xr devstat(3), touch .Dd.

PR: mostly bin/68840, with style changes; bin/73327
Submitted by: Dan Nelson, Peter Schuller
Obtained from: NetBSD (a part of man page)
MFC after: 1 month


146650 26-May-2005 keramida

Interlink systat(1), iostat(8) and vmstat(8) through their SEE ALSO
sections, so that users of one can learn about the others easily.


141846 13-Feb-2005 ru

Expand *n't contractions.


140442 18-Jan-2005 ru

Sort sections.


125431 04-Feb-2004 ru

Put libdevstat before libkvm, because the former depends on the latter.


116325 14-Jun-2003 ken

Remove MAINTAINER= lines in the makefiles for camcontrol, iostat, libcam
and libdevstat, since the new way of doing things is to just list
maintainership in src/MAINTAINERS.

Also, remove duplicate entries in src/MAINTAINERS for those utilities. I
already had entries for them.


113091 04-Apr-2003 obrien

style.Makefile(5)


112288 15-Mar-2003 phk

Run a revision of the devstat interface:

Kernel:

Change statistics to use the *uptime() timescale (ie: relative to
boottime) rather than the UTC aligned timescale. This makes the
device statistics code oblivious to clock steps.

Change timestamps to bintime format, they are cheaper.

Remove the "busy_count", and replace it with two counter fields:
"start_count" and "end_count", which are updated in the down and
up paths respectively. This removes the locking constraint on
devstat.

Add a timestamp argument to devstat_start_transaction(), this will
normally be a timestamp set by the *_bio() function in bp->bio_t0.
Use this field to calculate duration of I/O operations.

Add two timestamp arguments to devstat_end_transaction(), one is
the current time, a NULL pointer means "take timestamp yourself",
the other is the timestamp of when this transaction started (see
above).

Change calculation of busy_time to operate on "the salami principle":
Only when we are idle, which we can determine by the start+end
counts being identical, do we update the "busy_from" field in the
down path. In the up path we accumulate the timeslice in busy_time
and update busy_from.

Change the byte_* and num_* fields into two arrays: bytes[] and
operations[].

Userland:

Change the misleading "busy_time" name to be called "snap_time" and
make the time long double since that is what most users need anyway,
fill it using clock_gettime(CLOCK_MONOTONIC) to put it on the same
timescale as the kernel fields.

Change devstat_compute_etime() to operate on struct bintime.

Remove the version 2 legacy interface: the change to bintime makes
compatibility far too expensive.

Fix a bug in systat's "vm" page where boot relative busy times would
be bogus.

Bump __FreeBSD_version to 500107

Review & Collaboration by: ken


111008 16-Feb-2003 phk

Add #include <sys/resource.h>

My apologies for missing these #includes, I must have confused the
dependencies with a wrong timestamp or something.


111002 16-Feb-2003 phk

Remove #include <sys/dkstat.h>


108317 27-Dec-2002 schweikh

english(4) police.


107784 12-Dec-2002 trhodes

MFS: Spelling: s/transfered/transferred/

PR: 46104
Pointed out by: Rich Morin <rdm@cfcl.com>
Approved by: re (rwatson)


102068 18-Aug-2002 bde

Use essentially the same formatting of the CPU stats percentages as in
vmstat so that they never coalesce. Both iostat and vmstat need larger
fixes to prevent wide fields from unnecessarily messing up the alignment
of all subsequent fields.

PR: 41674
MFC-after: 3 days


102067 18-Aug-2002 bde

Include <nlist.h> for nlist interfaces instead of depending on namespace
pollution in <kvm.h>.


99968 14-Jul-2002 charnier

The .Nm utility


96247 09-May-2002 joe

Replace /kernel with /boot/kernel/kernel.

PR: docs/37757
Submitted by: Hiten Pandya <hiten@uk.FreeBSD.org>


83965 26-Sep-2001 guido

Redo patch in 1.22 such that the header printing is reset when the
process gets a SIGCONT

Reviewed by: kris@freebs.org
MFC after: 2 weeks


82723 01-Sep-2001 kris

Don't do unsafe activities in the syscall handler.

MFC after: 2 weeks


82168 23-Aug-2001 ken

Bring in some iostat fixes that bde reminded me about. These fixes were
originally written in January, 2000, but have been substantially updated.

- No longer use hz/stathz and the CPU times in computing the TTY stats,
but rather use etime, like the disk stats.
- Clean up malloc/realloc failure tests.
- Use a new integrated routine to fetch devstat information via sysctl or
KVM.
- Get rid of the X() macro for calculating CPU stats
- Use rint() on the CPU state display to avoid truncation errors. (this
requires libm)
- Clean up flag usage somewhat.

Reviewed by: bde


81247 07-Aug-2001 ru

mdoc(7) police: markup nits.


81134 04-Aug-2001 tmm

Make use of the new features of libdevstat to allow iostat to work on
crash dumps, and make it use sysctl for all data retrievals in the
"live" case (i.e. when not using iostat on a crash dump).
Remove setgid kmem for the iostat executable, it is not needed any
more after these changes.

Reviewed by: ken


80029 20-Jul-2001 obrien

Perform a major cleanup of the usr.sbin Makefiles.
These are not perfectly in agreement with each other style-wise, but they
are orders of orders of magnitude more consistent style-wise than before.


79755 15-Jul-2001 dd

Remove whitespace at EOL.


79537 10-Jul-2001 ru

mdoc(7) police: removed HISTORY info from the .Os call.


79454 09-Jul-2001 dd

mdoc(7) police: remove extraneous .Pp before and/or after .Sh.


76812 18-May-2001 ru

Removed -I${.CURDIR}/.../sys from CFLAGS.


74816 26-Mar-2001 ru

- Backout botched attempt to introduce MANSECT feature.
- MAN[1-9] -> MAN.


74532 20-Mar-2001 ru

Set the default manual section for usr.sbin/ to 8.


71898 01-Feb-2001 ru

mdoc(7) police: split punctuation characters + misc fixes.


70403 27-Dec-2000 ru

Prepare for mdoc(7)NG.


70015 14-Dec-2000 ru

mdoc(7) police: removed history info from the .Os FreeBSD call.


69471 01-Dec-2000 jedgar

Properly check malloc(3) return values

Approved by: ken


68965 20-Nov-2000 ru

mdoc(7) police: use the new features of the Nm macro.


59789 30-Apr-2000 asmodai

Remove bogus include, as per style(9).
Remove unused variable.


56561 24-Jan-2000 charnier

Back out previous commit minus spelling fixes. Should have asked maintainer
before.


56483 23-Jan-2000 charnier

Rework use of Nm.
Remove -? flag that was not working but documented. Make it work instead
but hide it in man page and usage string as others tools do.
Spelling.
Abort on allocation failure (with errx()).


50479 28-Aug-1999 peter

$Id$ -> $FreeBSD$


49824 15-Aug-1999 mpp

Various man page cleanup:

- Sort xrefs.
- FreeBSD.ORG -> FreeBSD.org
- Be consistent with section names as outlined in mdoc(7).
- Other misc mdoc cleanup.

PR: doc/13144
Submitted by: Alexey M. Zelkin <phantom@cris.net>


48173 24-Jun-1999 imp

Per Ken's request, back out my last change to this file. iostat's man
page documents '?' as a valid option, as does the usage message. None
of the other programs' man pages documented '?' as a valid option.


48171 24-Jun-1999 imp

Two getopts related nits:
o getopt returns -1 rather than EOF on errors
o getopt returns '?' for characters it doesn't know about, so
don't include them in the getopt options string.


47993 18-Jun-1999 ken

Add a MAINTAINER line to modules that I maintain.

Suggested by: brian, markm


39498 20-Sep-1998 ken

Change the devstat generation number from an int to a long. The int-sized
generation was causing unaligned access faults on the Alpha.

I have incremented the devstat version number, since this is an interface
change. You'll need to recompile libdevstat, systat, iostat, vmstat and
rpc.rstatd along with your kernel.

Partially Submitted by: Andrew Gallatin <gallatin@cs.duke.edu>


39387 16-Sep-1998 ken

Fix style bugs introduced by Matt Dillon in his previous, unreviewed
commit.

Reviewed by: gibbs


39371 16-Sep-1998 dillon

Fixed segfault when more then four devices are specified (improper free),
fixed variable so all manually-specified devices are shown rather then
cutting the display off at 3, fixed formatting for msps when msps is
larger then 100 (it was blowing the columner display output before),
added -K option to make blk count (-oIK) force a 1K block size (to conform
more closely to systat, vmstat definition of blocksize).


39230 15-Sep-1998 gibbs

Update system to new device statistics code.

Submitted by: "Kenneth D. Merry" <ken@plutotech.com>


29602 19-Sep-1997 charnier

Use err(3).


27361 13-Jul-1997 guido

Remove -I/sys and add -I${.CURDIR}/../../sys


24428 31-Mar-1997 imp

compare return value from getopt against -1 rather than EOF, per the final
posix standard on the topic.


19472 06-Nov-1996 phk

when you try to run iostat is fails with invalid dk_ndrive 0

Reviewed by: phk
Submitted by: John-Mark Gurney <jmg@nike.efn.org>


16301 11-Jun-1996 jkh

Cosmetic fixes for drive names which are 4 chars long.
Submitted-By: Joe Greco <jgreco@ns.sol.net>


13511 20-Jan-1996 mpp

Fix a variety of minor typos and cross references in a bunch of
man pages.

Masanobu Saitoh <msaitoh@spa.is.uec.ac.jp>
Giles Lean <giles@nemeton.com.au>
<soda@sra.co.jp>


8857 30-May-1995 rgrimes

Remove trailing whitespace.


4343 10-Nov-1994 ache

Fix printout bug
Submitted by: fredriks@mcs.com


3642 16-Oct-1994 wollman

New way of getting disk drive names.


1863 05-Aug-1994 wollman

Get rid of update. Make man page installation work with our scheme
(and rename a few in the process).


1856 05-Aug-1994 dg

Converted 'vmunix' to 'kernel'.


1554 26-May-1994 rgrimes

This commit was generated by cvs2svn to compensate for changes in r1553,
which included commits to RCS files with non-trunk default branches.