292019 |
09-Dec-2015 |
asomers |
When iostat(8) receives SIGINT while running with "-w" or "-c", it will now print statistics one more time before exiting. Also, it now implements the wait using setitimer instead of sleep, so the waits will be more consistent when the system is heavily loaded.
MFC after: 4 weeks Sponsored by: Spectra Logic Corp Differential Revision: https://reviews.freebsd.org/D4473
|
277566 |
23-Jan-2015 |
will |
Print transfer times for read, write, & overall independently.
Round up calculated values for iops and average time per io to avoid a shifting display if there are 1000+ (or even 10000+) iops, or if an average time per io column is 1000+ ms.
Reviewed by: ken MFC after: 1 week Sponsored by: Spectra Logic MFSpectraBSD: 1089947 on 2014/09/26 1093625 on 2014/09/29 1093650 on 2014/09/29 1095662 on 2014/10/09
|
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
|
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
|
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.
|
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
|
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
|
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
|
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>
|
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).
|