freebsd-nq/usr.sbin
Poul-Henning Kamp 7194d335cf 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
2003-03-15 21:59:06 +00:00
..
ac Remove unused #includes. Eliminate castings by using size_t instead of int. 2002-10-17 13:19:47 +00:00
accton The .Nm utility 2002-07-14 14:47:15 +00:00
acpi Add code to parse the contents of an ACPI MADT table and to dump its 2003-01-08 20:46:25 +00:00
adduser mdoc(7) police: Scheduled sweep. 2003-02-24 22:53:26 +00:00
amd Mark all internal libraries with INTERNALLIB. 2002-05-13 11:24:03 +00:00
ancontrol Add support for MPI-350 the mini-pci Cisco Aironet card. This needs more 2002-12-29 19:22:07 +00:00
apm mdoc(7) police: Deal with self-xrefs. 2002-12-24 13:41:48 +00:00
apmd english(4) police. 2002-12-27 12:15:40 +00:00
arp Further fix the syntax by ignoring empty and whitespace-only lines. 2003-03-05 15:53:18 +00:00
atm de-__P() 2002-10-10 00:32:55 +00:00
bluetooth Correct typos, mostly s/ a / an / where appropriate. Some whitespace cleanup, 2003-01-01 18:49:04 +00:00
boot0cfg Use the new sector0 munging ioctls to make boot0cfg work under GEOM. 2002-12-29 15:01:58 +00:00
boot98cfg Use DIOCGPC98 ioctl to write boot block. 2003-02-11 07:29:14 +00:00
bootparamd The .Nm utility 2002-07-14 14:47:15 +00:00
btxld Make this work on different endianness machines. 2003-03-11 13:48:58 +00:00
burncd mdoc(7) police: Scheduled sweep. 2003-02-24 22:53:26 +00:00
cdcontrol The default CD drive is /dev/cd0, not /dev/cd0c. 2002-12-03 15:41:30 +00:00
chkgrp
chown Reword the description of -R a bit and add a note about being careful 2003-01-26 02:40:23 +00:00
chroot The .Nm utility 2002-07-14 14:47:15 +00:00
ckdist - Align the function prototype of the external `crc' function with 2003-03-13 23:34:18 +00:00
config Print FYI messages on stderr. Previously, they were printed on stdout, 2003-03-09 15:08:47 +00:00
cron Allow inner whitespace in the right-hand side of an environment variable 2003-02-10 11:20:58 +00:00
crunch Complete the endianness support -- sparc64 can now do i386. 2003-03-13 11:47:31 +00:00
ctm Correct typos, mostly s/ a / an / where appropriate. Some whitespace cleanup, 2003-01-01 18:49:04 +00:00
daemon MFS: 1.2.2.2 2003-02-05 19:16:18 +00:00
dev_mkdb The .Nm utility 2002-07-14 14:47:15 +00:00
devinfo -v now also prints the pnpinfo and location information for the devices 2003-02-17 18:56:54 +00:00
digictl The .Nm utility 2002-07-14 14:47:15 +00:00
editmap Add editmap, a new utility which comes with sendmail 8.12 for editing maps in 2002-02-17 22:02:59 +00:00
edquota Uniformly refer to a file system as "file system". 2002-12-12 17:26:04 +00:00
elf2exe The .Nm utility 2002-07-14 14:47:15 +00:00
extattr mdoc(7) police: Scheduled sweep. 2003-02-24 22:53:26 +00:00
extattrctl The .Nm utility 2002-07-14 14:47:15 +00:00
faithd Correct typos, mostly s/ a / an / where appropriate. Some whitespace cleanup, 2003-01-01 18:49:04 +00:00
fdcontrol english(4) police. 2002-12-27 12:15:40 +00:00
fdformat Include <string.h> for some prototypes, rather than depending on 2002-04-01 21:13:17 +00:00
fdread Use `The .Nm utility' 2002-04-20 12:27:18 +00:00
fdwrite Use `The .Nm utility' 2002-04-20 12:27:18 +00:00
fwcontrol - Detect PAL by CIP header rather than the DSF bit in the DV header. 2003-02-19 01:14:52 +00:00
getfmac sigh... revert the previous change; this isn't getpmac 2003-01-15 03:13:51 +00:00
getpmac mdoc(7) police: Scheduled sweep. 2003-02-24 22:53:26 +00:00
gifconfig english(4) police. 2002-12-27 12:15:40 +00:00
i4b Correct typos, mostly s/ a / an / where appropriate. Some whitespace cleanup, 2003-01-01 18:49:04 +00:00
ifmcstat The .Nm utility 2002-07-14 14:47:15 +00:00
inetd Under some unusual conditions, inetd can leak a open file discriptor 2003-02-23 16:54:19 +00:00
iostat Run a revision of the devstat interface: 2003-03-15 21:59:06 +00:00
ipftest * ipftest now compiles with IPFILTER_LOG and needs ip_log.c to be able to 2002-03-20 08:57:10 +00:00
ipresend
ipsend
iptest
IPXrouted "Advertizing" is ugly and possibly incorrect; use "Advertising" instead. 2003-02-27 14:07:49 +00:00
jail Remove traces of MAKEDEV & add xref to mount_devfs(8). 2003-02-28 22:47:18 +00:00
kbdcontrol de-__P() 2002-07-11 21:13:37 +00:00
kbdmap mdoc(7) police: bump document date for the C rewrite, nit. 2002-12-04 14:45:48 +00:00
kernbb mdoc(7) police: Scheduled sweep. 2003-02-24 22:53:26 +00:00
keyadmin Arrange to not have /* inside a comment. Typo fix. 2002-10-16 15:56:13 +00:00
keyserv Use arc4random() instead of random() when generating the master key. 2003-02-18 01:35:58 +00:00
kgmon Fix int/size_t mismatch for sysctl arguments. Try not to introduce more 2002-07-30 04:45:14 +00:00
kgzip Convert kgzip(8) to be an i386 cross-tool. This is needed for 2003-03-11 11:45:43 +00:00
kldxref 3rd party modules live in /boot/modules nowadays. 2003-03-03 22:49:21 +00:00
lastlogin The .Nm utility 2002-07-14 14:47:15 +00:00
lpr english(4) police. 2002-12-27 12:15:40 +00:00
lptcontrol The .Nm utility 2002-07-14 14:47:15 +00:00
mailstats Update build infrastructure for sendmail 8.12. 2002-02-17 22:05:07 +00:00
mailwrapper mdoc(7) police: Scheduled sweep. 2003-02-24 22:53:26 +00:00
makemap Update build infrastructure for sendmail 8.12. 2002-02-17 22:05:07 +00:00
manctl The .Nm utility 2002-07-14 14:47:15 +00:00
memcontrol mdoc(7) police: markup fixes. 2002-11-27 15:31:08 +00:00
mergemaster Put back the deletion of TEMPROOT/etc/passwd. 2003-03-05 12:42:08 +00:00
mixer Print old mixer levels when setting new ones. 2002-12-30 04:23:08 +00:00
mld6query The .Nm utility 2002-07-14 14:47:15 +00:00
mlxcontrol
mount_nwfs s/filesystem/file system/g as discussed on -developers 2002-08-21 18:11:48 +00:00
mount_portalfs s/filesystem/file system/g as discussed on -developers 2002-08-21 18:11:48 +00:00
mount_smbfs This really isn't WARNS clean. 2002-12-30 09:38:46 +00:00
mountd Implement nonblocking tpc-connections. rpcgen -m does still 2003-01-16 07:27:30 +00:00
moused Correct typos, mostly s/ a / an / where appropriate. Some whitespace cleanup, 2003-01-01 18:49:04 +00:00
mptable
mrouted english(4) police. 2002-12-27 12:15:40 +00:00
mtest The .Nm utility 2002-07-14 14:47:15 +00:00
mtree - Align the function prototype of the external `crc' function with 2003-03-13 23:35:30 +00:00
named Install the rfc 2317 notes 2002-07-01 01:23:59 +00:00
named.reload
named.restart
ndc
ndp Fix typos, mostly s/ an / a / where appropriate and a few s/an/and/ 2002-12-30 21:18:15 +00:00
newsyslog Fix interactions between entries for a specific file vs entries for 2003-03-09 03:19:52 +00:00
nfsd Update manpage to match the code, vfsload() is not used 2002-08-11 15:19:49 +00:00
ngctl Add missing "of". 2002-12-14 00:20:43 +00:00
nghook The .Nm utility 2002-07-14 14:47:15 +00:00
nologin The .Nm utility 2002-07-06 19:34:18 +00:00
nslookup Install files via FILES. 2001-12-17 16:21:59 +00:00
nsupdate
ntp Correct typos, mostly s/ a / an / where appropriate. Some whitespace cleanup, 2003-01-01 18:49:04 +00:00
ofwdump Increase the size of the property buffer to 8192. 1024 wasn't enough to 2003-03-14 16:12:42 +00:00
pccard manufacturer id is typically 4 bytes 2003-03-14 21:11:01 +00:00
pciconf Fix up some grammar. 2003-01-09 04:35:38 +00:00
pcvt Correct typos, mostly s/ a / an / where appropriate. Some whitespace cleanup, 2003-01-01 18:49:04 +00:00
periodic The .Nm utility 2002-07-14 14:47:15 +00:00
pkg_install Fix a long-standing bug where if the package being deleted had no 2003-02-25 15:01:54 +00:00
pnpinfo
ppp Correct typos, mostly s/ a / an / where appropriate. Some whitespace cleanup, 2003-01-01 18:49:04 +00:00
pppctl The .Nm utility 2002-07-14 14:47:15 +00:00
pppd Correct typos, mostly s/ a / an / where appropriate. Some whitespace cleanup, 2003-01-01 18:49:04 +00:00
pppstats Usage style sweep: spell "usage" with a small 'u'. 2002-04-22 13:44:47 +00:00
praliases Update build infrastructure for sendmail 8.12. 2002-02-17 22:05:07 +00:00
prefix Fix typos, mostly s/ an / a / where appropriate and a few s/an/and/ 2002-12-30 21:18:15 +00:00
procctl The .Nm utility 2002-07-14 14:47:15 +00:00
pstat - Modernize the format of the open file showing mode output: 2003-01-31 15:16:52 +00:00
pw There is no sense to use random random() and arc4random() in the same program. 2003-02-11 02:17:11 +00:00
pwd_mkdb Uniformly refer to a file system as "file system". 2002-12-12 17:26:04 +00:00
quot Remove contractions. 2003-02-18 03:34:32 +00:00
quotaon Uniformly refer to a file system as "file system". 2002-12-12 17:26:04 +00:00
rarpd Add "-t" to useage message and comment. (The -t option was added 2002-09-15 15:37:50 +00:00
raycontrol Replace the remaining strcpy() instances with strlcpy(), fixing a segfault 2002-12-02 20:29:08 +00:00
repquota Uniformly refer to a file system as "file system". 2002-12-12 17:26:04 +00:00
rip6query The .Nm utility 2002-07-14 14:47:15 +00:00
rmt The .Nm utility 2002-07-14 14:47:15 +00:00
route6d Add missing srand() (sranddev() for FreeBSD) 2003-02-11 02:09:05 +00:00
rpc.lockd Implement nonblocking tpc-connections. rpcgen -m does still 2003-01-16 07:27:30 +00:00
rpc.statd Implement nonblocking tpc-connections. rpcgen -m does still 2003-01-16 07:27:30 +00:00
rpc.umntall Uniformly refer to a file system as "file system". 2002-12-12 17:26:04 +00:00
rpc.yppasswdd Implement nonblocking tpc-connections. rpcgen -m does still 2003-01-16 07:27:30 +00:00
rpc.ypupdated Unbogotify the comment containing the RCS Id. 2002-02-15 00:46:32 +00:00
rpc.ypxfrd english(4) police. 2002-12-27 12:15:40 +00:00
rpcbind Implement nonblocking tpc-connections. rpcgen -m does still 2003-01-16 07:27:30 +00:00
rrenumd english(4) police. 2002-12-27 12:15:40 +00:00
rtadvd Use srandomdev() for FreeBSD 2003-02-11 02:21:41 +00:00
rtprio Use `The .Nm utility' 2002-04-20 12:27:18 +00:00
rtsold Add -DHAVE_ARC4RANDOM to CFLAGS 2003-02-11 02:25:00 +00:00
rwhod Comment out WARNS?=4 to unbreak the Alpha build. 2002-07-15 17:11:20 +00:00
sa Get rid of %qd, and unbreak Alpha build. 2002-07-15 16:05:15 +00:00
sade Remove ftp2.it.FreeBSD.org from the list of mirrors. 2003-03-14 15:47:14 +00:00
sendmail No need for the OPENSSL_NO_KRB5 switch anymore. 2003-01-31 23:26:55 +00:00
setfmac Break setfmac.8 into two actual man pages, and reword bits of the 2003-03-13 23:04:05 +00:00
setkey Correct typos, mostly s/ a / an / where appropriate. Some whitespace cleanup, 2003-01-01 18:49:04 +00:00
setpmac mdoc(7) police: Scheduled sweep. 2003-02-24 22:53:26 +00:00
sgsc
sicontrol mdoc(7) police: Deal with self-xrefs. 2002-12-24 13:41:48 +00:00
sliplogin The .Nm utility 2002-07-14 14:47:15 +00:00
slstat WARNS=2, de-__P() 2002-07-11 22:50:36 +00:00
spkrtest The .Nm utility 2002-07-14 14:47:15 +00:00
spray do not call clnt_spcreateerror nor clnt_sperror with a NULL pointer, instead 2002-07-15 18:53:52 +00:00
stallion Correct typos, mostly s/ a / an / where appropriate. Some whitespace cleanup, 2003-01-01 18:49:04 +00:00
sysinstall Remove ftp2.it.FreeBSD.org from the list of mirrors. 2003-03-14 15:47:14 +00:00
syslogd Hostname specifications must allow commas in the value. They are 2003-02-21 19:02:31 +00:00
tcpdchk
tcpdmatch Don't clobber the default for CFLAGS. 2001-08-31 11:05:24 +00:00
tcpdump Correct typos, mostly s/ a / an / where appropriate. Some whitespace cleanup, 2003-01-01 18:49:04 +00:00
timed Fix typos, mostly s/ an / a / where appropriate and a few s/an/and/ 2002-12-30 21:18:15 +00:00
traceroute Update for traceroute 1.4a12 2002-07-28 02:27:07 +00:00
traceroute6 Correct typos, mostly s/ a / an / where appropriate. Some whitespace cleanup, 2003-01-01 18:49:04 +00:00
trpt Unbreak Alpha build. 2002-07-16 09:58:36 +00:00
tzsetup The .Nm utility 2002-07-14 14:47:15 +00:00
ugidfw mdoc(7) police: markup overhaul. 2002-12-12 14:09:25 +00:00
usbd Eliminate hard sentence breaks. 2003-01-30 22:38:54 +00:00
usbdevs The .Nm utility 2002-07-14 14:47:15 +00:00
vidcontrol mdoc(7) police: Nits. 2003-03-02 21:04:21 +00:00
vipw Don't use NULL when we really mean 0 for call to pw_edit. 2002-08-21 19:01:50 +00:00
vnconfig
watch Fix typos, mostly s/ an / a / where appropriate and a few s/an/and/ 2002-12-30 21:18:15 +00:00
wicontrol Start whining to stderr when people use obsolete flags. These flags 2003-03-04 14:59:48 +00:00
wlconfig The .Nm utility 2002-07-14 14:47:15 +00:00
xten KNF. 2002-06-12 04:18:35 +00:00
yp_mkdb The .Nm utility 2002-07-14 14:47:15 +00:00
ypbind xids are u_int32_ts, which are not necessarily the same size as time_ts or 2002-09-16 21:39:42 +00:00
yppoll The .Nm utility 2002-07-14 14:47:15 +00:00
yppush The .Nm utility 2002-07-14 14:47:15 +00:00
ypserv ypserv(8) is now started from rc.d 2003-01-23 06:03:30 +00:00
ypset The .Nm utility 2002-07-14 14:47:15 +00:00
zic Check whether setmode(3) fails and deallocate its return value after 2003-02-24 05:56:36 +00:00
Makefile Revert rev. 1.244 change -- only build kgzip(8) on i386. 2003-03-11 11:37:07 +00:00
Makefile.inc