Commit Graph

97 Commits

Author SHA1 Message Date
schweikh
31ec6670ae Reduce field width for some columns so that the default output fits in <= 79
columns. 80 columns + newline is a problem for some terminals including syscons.

Requested by:	bde
MFC after:	1 week
2001-06-23 17:52:10 +00:00
schweikh
79e3ccfb6f Made all fields in default output be space separated. Run-together
columns confuse the heck out of other apps trying to parse vmstat output
(eg sscope). I made sure we're still <= 80 cols per line.
Fixed warnings about unused vars and printf %format mismatches.

Requested by:	Eugene Aleynikov <eugenea@infospace.com>
Reviewed by:	joerg (implicitly)
MFC after:	2 weeks
2001-06-19 17:59:40 +00:00
schweikh
ec5e03bd09 Avoid the avm field joining the w field when avm is > 9.999.999 pages
which is slightly less than 4GB. To use a quote from someone who shall
remain nameless "No one will ever need more than 4 GB" :-) But FreeBSD
is prepared if we one day will.

Requested by:	Eugene Aleynikov <eugenea@infospace.com>
2001-06-13 18:43:28 +00:00
schweikh
bdb89dc451 Increase field width by one for 'fre' to accomodate today's memory sizes.
PR:		25267
Submitted by:	Eugene Aleynikov <eugene@infospace.com>
Reviewed by:	joerg
MFC after:	2 weeks
2001-06-12 19:47:40 +00:00
alfred
3956d542bf fix usage statement (add missing [-n devs] option)
Submitted by: Maxim Konovalov <maxim@macomnet.ru>

Silence a warning by renaming the 'pgtok' #define to 'vmstat_pgtok' so
as not to conflict with the 'pgtok' #define in sys/param.h
2001-02-22 13:55:12 +00:00
ume
1ae749987d Add mibs to hold the number of forks since boot. New mibs are:
vm.stats.vm.v_forks
	vm.stats.vm.v_vforks
	vm.stats.vm.v_rforks
	vm.stats.vm.v_kthreads
	vm.stats.vm.v_forkpages
	vm.stats.vm.v_vforkpages
	vm.stats.vm.v_rforkpages
	vm.stats.vm.v_kthreadpages

Submitted by:	Paul Herman <pherman@frenchfries.net>
Reviewed by:	alfred
2001-01-23 14:32:01 +00:00
des
efffbed318 Use the vm.zone sysctl rather that grope through the zone allocator's
internal data structures.
2001-01-23 00:31:56 +00:00
mjacob
16f8aaa409 Update vm zone list traversal for changes made to kernel. Note that this
is ultimately silly because no locks are held in user space while traversing
the list via kvm_reads... really, this should use the sysctl interface
which *is* protected by a lock in the kernel.
2001-01-23 00:09:30 +00:00
phk
f5e4ff159a Remove unneeded #include <sys/buf.h> 2000-05-05 16:07:10 +00:00
phk
237070fe4d unifdef -Uvax -Uhp300 -Uluna68k -Umips -Utahoe 1999-09-01 11:25:25 +00:00
peter
3b842d34e8 $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
n_hibma
a7afbdeb6b Convert interrupt count from signed to unsigned and the total
from signed long to unsigned lon long.

PR:		12808
Submitted by:	Kevin Day toasty@dragondata.com
Reviewed by:	bde
1999-07-26 09:18:26 +00:00
bde
4852bd7ff2 Backed out the previous commit, except for the parts that reduced
the magicness of 200.  Cleaned up the remaining parts.  Circularisation
of the list of malloc types was a kernel bug (now fixed).  Interfering
with applications' definitions of pgtok is a system header bug (not
fixed).
1999-05-12 11:49:47 +00:00
imp
bb52f35f49 Sometime since this file was written, the list of kernel malloc types
changed from a simple list to a circular one.  We compensate by only
looping until we see the first address again.  Before, things would
terminate because it was limited to 200 iterations.  This lead to
bogus statistics and repeating stats for memory types.

This should be merged into 3.2, as the same bug is there.
1999-05-10 00:33:32 +00:00
bde
9e450d21be Fixed bitrot in usage message and disordering of options in previous commit.
I'm not sure why we have `mvstat -z'.  `sysctl vm.zone' gives more
information.  OTOH, `sysctl vm.zone' shouldn't return ASCII data,
and reporting of memory use should be integrated, at least as an
option.
1999-02-15 14:15:28 +00:00
dillon
1ff9917e47 Add -z option to vmstat to dump data from the zone allocator 1999-02-13 09:59:24 +00:00
ken
10cc51ce30 Fix vmstat display problems. The header printout wasn't quite right, and
the display wrapped around.

This decreases the default maximum number of disks shown to 2, so things
don't wrap around so easily.  Also, it fixes the header display issues.

Submitted by:	Bruce Evans <bde@FreeBSD.ORG>
1999-02-10 00:46:27 +00:00
ken
542b263658 Add a prioritization field to the devstat_add_entry() call so that
peripheral drivers can determine where in the devstat(9) list they are
inserted.

This requires recompilation of libdevstat, systat, vmstat, rpc.rstatd, and
any ports that depend on the devstat code, since the size of the devstat
structure has changed.  The devstat version number has been incremented as
well to reflect the change.

This sorts devices in the devstat list in "more interesting" to "less
interesting" order.  So, for instance, da devices are now more important
than floppy drives, and so will appear before floppy drives in the default
output from systat, iostat, vmstat, etc.

The order of devices is, for now, kept in a central table in devicestat.h.
If individual drivers were able to make a meaningful decision on what
priority they should be at attach time, we could consider splitting the
priority information out into the various drivers.  For now, though, they
have no way of knowing that, so it's easier to put them in an easy to find
table.

Also, move the checkversion() call in vmstat(8) to a more logical place.

Thanks to Bruce and David O'Brien for suggestions, for reviewing this, and
for putting up with the long time it has taken me to commit it.  Bruce did
object somewhat to the central priority table (he would rather the
priorities be distributed in each driver), so his objection is duly noted
here.

Reviewed by:	bde, obrien
1999-02-10 00:04:13 +00:00
jdp
5b35be6f12 Back out previous work-around for "vmstat -i" failing on ELF
kernels.  A better fix is now committed to "src/lib/libc/gen/nlist.c"
and "src/usr.sbin/kvm_mkdb/nlist.c".
1998-10-28 06:41:24 +00:00
msmith
b628626c22 Work around some variables having N_UNDF types but valid values; this
makes vmstat work on ELF kernels again.
Submitted by:	Daniel Rock <rock@cs.uni-sb.de>
1998-10-24 23:12:09 +00:00
ken
7c2e7bb880 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>
1998-09-20 00:11:23 +00:00
dillon
8c0ba7f814 vmstat shows all manually-specified devices rather then just the first
three.
1998-09-16 18:20:23 +00:00
gibbs
b954e9c264 Update system to new device statistics code.
Submitted by:	"Kenneth D. Merry" <ken@plutotech.com>
1998-09-15 08:16:45 +00:00
bde
0609531ab6 Fixed printf format errors. 1998-07-06 21:01:54 +00:00
dyson
a620a26471 Support a couple of new "-s" stats. 1998-03-07 23:40:23 +00:00
bde
dbfaf6f7a4 Const poisoning from ks_shortdesc. 1997-12-05 19:28:28 +00:00
phk
f1a5d63a7b struct kmemstats was renamed. 1997-10-10 18:19:48 +00:00
phk
ad5c9a1c33 Make vmstat understand the dynamic malloc stuff. There are a number
of ugly hardcoded constants in there.
1997-10-10 14:08:07 +00:00
dima
c345be1851 Be more specific about -f/-t options (they're not yet implemented),
not just exit with 0 status.

This definitely should go to 2.2.5.
If i won't have any objections - I'll commit it tonight.
1997-10-06 18:52:16 +00:00
charnier
5aeacfdd37 Use err(3). Add some %d to %ld changes. 1997-08-25 06:40:05 +00:00
imp
141381e1cb compare return value from getopt against -1 rather than EOF, per the final
posix standard on the topic.
1997-03-29 04:34:07 +00:00
scrappy
3e65976742 Slight visual formatting change to the output so that:
procs   memory     page                    disks   faults      cpu
 r b w   avm   fre  flt  re  pi  po  fr  sr w0 w1   in   sy  cs us sy id
 1 0 04135184  6016  180   2   1   0 158 135 10  0  386 1820  77 20  6 74

looks like:

 procs      memory     page                    disks   faults      cpu
 r b w     avm   fre  flt  re  pi  po  fr  sr w0 w1   in   sy  cs us sy id
 1 0 0 4135188  6016  180   2   1   0 158 135 10  0  387 1821  77 20  6 74
1997-03-16 23:11:07 +00:00
jkh
7e37c839a0 Print number of second-level cache hits as per-directory, not per-process
(since they're per-directory now).
Learned from: Kirk McKusick's OS internals course.. :-)
1996-03-03 09:06:59 +00:00
bde
06e92e8fee Reduced vm dependencies. Only `struct vmmeter.h' is required.
Unfortunately, the sysctl number for reading this struct is
bogusly placed in <vm/vm_param.h> instead of with the declaration
of the struct.
1995-12-13 15:01:13 +00:00
peter
160e301cbc add a #include <sys/vmmeter.h> since we are using the vmmeter structures
and this was once (but no longer it seems) included by <vm/vm.h>
It should now compile again.
1995-12-13 11:33:34 +00:00
rgrimes
a14d555c87 Remove trailing whitespace. 1995-05-30 06:41:30 +00:00
dg
c510e7263f Removed object lookup/hit count and changed the order of things a little. 1995-03-25 08:44:48 +00:00
dg
e859f0ca16 Removed printing of cnt.v_nzfod: we don't implement this in the kernel. 1995-03-25 06:11:43 +00:00
dg
028f7bbfb0 Added 'pages in VM cache' statistic. 1995-01-10 05:52:59 +00:00
dg
760a1ff3ea Made zero-fill stats a bit more clear. 1994-10-18 15:17:09 +00:00
dg
fd05e6fbc0 Updated to changes in struct vmmeter and reorganized -s stats to be more
logical.
1994-10-18 15:00:06 +00:00
dg
7333a06cbb Restore all of my changes that Garrett clobbered in the previous commit. 1994-10-17 10:34:42 +00:00
wollman
efe252383a New way of getting disk drive names. 1994-10-16 04:04:56 +00:00
dg
6c5c5a9444 Updated to changes in struct vmmeter. Nuked !NEWVM code. Fixed rounding
bug when interval is 1 second.
1994-10-15 13:36:32 +00:00
phk
f87d72f160 Realigned the output of "vmstat -m", "MSDOSFS mount" was too wide for the
field.  Saved some space and gained a little clarity by printing "128K"
instead of 131072 (and so on).
1994-10-05 04:52:47 +00:00
rgrimes
573f71ed7a Add read_names support for i386, based on my original work from FreeBSD
and cleaned up slightly.
1994-05-29 06:19:34 +00:00
rgrimes
f9ab90d9d6 BSD 4.4 Lite Usr.bin Sources 1994-05-27 12:33:43 +00:00