Commit Graph

248 Commits

Author SHA1 Message Date
simonb 828483a73e Remove extern variables and functions now declared in dkstats.h.
While here, remove 77 (!) unneed #includes.
2000-12-01 02:19:43 +00:00
simonb 2eddffdf28 Show the vnode page cache memory usage on the "bufcache" display. 2000-11-30 12:08:13 +00:00
simonb ba632e7078 Use the vm.uvmexp2 sysctl. 2000-11-29 11:18:33 +00:00
thorpej e31647affd int vs. pointer format/argument confusion. 2000-10-11 18:50:12 +00:00
is 135600f947 More format string cleanup by sommerfeld. 2000-10-11 14:46:00 +00:00
ad 6be16e198e - Ignore null commands, instead of inventing a bogus match. See PR 10596.
- In switch_mode(), display status line even if switching to the same mode.
2000-09-04 12:28:12 +00:00
hubertf e80cff4760 Add "all" mode to systat to cycle between all modes,
sort of like VMS' "MONITOR ALL"-command.

Code was submitted by Jarkko Teppo <jate@uwasa.fi> in PR 10851,
cleaned up and added 'turns' handling by me.
2000-08-25 04:48:56 +00:00
itojun f39d44cbaf repair inet6.ip6 stat (broken in 1.4 -> 1.5). 2000-07-16 03:07:20 +00:00
itojun 710d2cd983 remove pulldown statistics 2000-07-13 11:07:34 +00:00
ad c92d2c3831 - Document new commands for IP displays.
- Replace the "Takes 2-10 percent of the CPU" statement.
2000-07-05 11:04:51 +00:00
ad fc3915475d - Add `boot', `run', `time' and `zero' commands to all IP displays. These work
as in the `vmstat' display mode. The default mode is now `time', not `boot'.
- ANSIfy.
- s@kre\(@vmstat\(@.
- __RCSID() police.
- Tweak inet.icmp display visual a little.
2000-07-05 11:03:20 +00:00
mrg 8d4795719a remove include of <vm/vm.h> 2000-06-29 06:26:33 +00:00
ad 3553879fc2 Use my proper name. 2000-06-13 13:36:42 +00:00
mycroft 4e87b9d4f5 Fix bogons in command parsing for >1 arg. 2000-06-05 21:48:25 +00:00
mycroft 2f240403c3 Display disk busy statistics as `%busy', as it's less confusing. 2000-06-05 21:36:34 +00:00
mycroft 981f9b7d7b Use hline() and variants in a bunch of places. 2000-06-04 18:29:13 +00:00
mycroft 796e1a63fa Fix a check so that holding down the space bar doesn't cause systat to lose. 2000-06-04 18:14:45 +00:00
mycroft 3ddc3c22b9 Fix the CPU usage bar graph. 2000-06-04 18:10:40 +00:00
thorpej 13ba787e60 Use kern.cp_time to fetch cp_time[]. Don't support fetching it from
crash dumps yet, as that requires determining which CPU we should fetch
it from, etc.
2000-06-04 16:06:25 +00:00
perry bd70b1984f include sys/sched.h to get definition of CPUSTATES 2000-06-04 01:53:51 +00:00
thorpej ae67003975 Need to include <sys/sched.h> to get cp_time-related constants. 2000-06-03 21:00:42 +00:00
thorpej 38c3726a7b Handle SONPROC state. 2000-06-02 04:32:07 +00:00
simonb 60e2ae70e5 Another cp_time size fix - also, there are 5 CPUSTATES now not four... 2000-05-29 12:54:31 +00:00
matt 0c28135c93 fix SHOW to work on any platform 2000-04-29 04:36:16 +00:00
thorpej 20a1abdaef u_quad_t must be cast to (long long) to be printed with %llu. 2000-04-27 21:40:41 +00:00
jdc d6d7f0531f Fix arguments to *printw(). 2000-04-27 00:30:51 +00:00
mrg 90bc324a8d use <sys/swap.h>. should have happened years ago. 2000-04-13 08:29:56 +00:00
jwise 1a9ae67f41 Reorder two commands so that substring matching doesn't make one shadow
the other.
2000-04-11 01:18:35 +00:00
jwise ad285dbfbe Two UI changes:
a.) restore the capability to enter a substring of a mode or command
      name.  Pointed out by Soren Jorvang.

  b.) (capital) Q now exits systat immediately
2000-04-11 01:01:26 +00:00
soren bca6350a53 Prevent percentage overflows by keeping score in kilobytes. 2000-02-14 05:35:21 +00:00
mycroft f5d7100e26 Nuke `extern int errno;' in code we compile with -Wstrict-prototypes. We get
the correct definition from errno.h.
2000-01-21 17:08:33 +00:00
ad b7de5e4494 Two tiny formatting nits in each file. 2000-01-13 12:39:04 +00:00
itojun f70b9a5724 don't choke on non-INET6 kernel, or non-IPSEC kernel.
cleanup error handling on mode change failure.

TODO: non-IPv4 kernel support should be improved.  "netstat" should be okay,
"inet.ip" and "inet.icmp" needs more trick.

NetBSD PR: 9157
2000-01-10 21:06:15 +00:00
itojun 4bed540017 oops, avoid duplicate free(). 2000-01-08 23:34:17 +00:00
itojun d7b4ec9207 - implement layered help.
Suggested by: Andy Doran <ad@mr-magoo.sports.gov.uk>
- inet6.ip6 and ipsec menu
- u_quad_t printing fix
- #ifdefs to allow compilation on 1.4.x
2000-01-08 23:12:36 +00:00
itojun 96a8bc922e add command line -n flag, which is same as "netstat numbers".
without it, we can't disable name resolution before the resolution starts.
2000-01-07 04:47:23 +00:00
itojun 7b5dfc58ad support IPv6. commands under "netstat" are IPv6 ready.
IPv6 is supported by filters (":ignore ssh") as well.
TODO: do something about line truncation?
TODO: inet6.icmp6?  ":help" will not fit into single line...
2000-01-05 11:59:12 +00:00
itojun 88ac9b1712 remove dupplicated prototype defs for file static funcs. 2000-01-05 11:50:21 +00:00
itojun 5784d552dd avoid null pointer access on ":show". 2000-01-05 11:48:21 +00:00
msaitoh dad5b69f37 fix printf format for inet.ip
(because the entries in struct ipstat is u_quad_t)
2000-01-04 15:17:00 +00:00
itojun 0b66a621f9 bring in latter half of PR 9080 (host table allocation error check). 2000-01-04 15:12:42 +00:00
tron a3045c188e Add missing memory check in port table handling. Patch based on
PR bin/9080 by Jun-ichiro itojun Hagino
1999-12-31 12:58:12 +00:00
jwise 2a1f30e2df GC now-spurious prototype 1999-12-25 01:49:25 +00:00
kleink c23c312a55 * Fix a display buglet: if the process list is exhausted before the window's
bottom is reached, clear the remaining lines, lest there be stale process
  entries if the process list shrinks.
* Implement a top(1)-like `user' command in the ps display.
1999-12-22 14:46:14 +00:00
jwise 850fb37f89 Fix error handling throughout. First off, it is not true as claimed in swap.c
that `systat doesn't handle errors'.  Second off, errx should not be used directly, since
the terminal should be cleaned up before bailing.  Third off, whatever we do we need
to be consistent.

There, I feel better now.
1999-12-20 23:11:50 +00:00
jwise bc8f4e2f46 Be consistent about whether to block SIGALRM before calling command() -- don't
ever do so, as the first thing command() does is block SIGALRM.
1999-12-20 21:59:29 +00:00
lukem 00a4e0e7ce need <string.h> for strlen() 1999-12-20 21:49:11 +00:00
jwise 24b9ee353a Nuke assignment unneeded after last commit 1999-12-20 21:46:10 +00:00
jwise b037ddd3b7 More cleanup -- use strtok() rather than rolling our own not-quite-correct version. 1999-12-20 21:42:50 +00:00
jwise 5a69f1bd85 Block alarm signals while displaying -- there's no reason to allow recursive
display at all.
1999-12-20 21:04:41 +00:00
jwise d0e3cec262 1.) Clean up keystroke processing
2.)  Add the all-time most requested feature:  hitting space or CR while
     not in command mode now causes an instant refresh
1999-12-20 20:49:06 +00:00
jwise 299c3534d3 TNF copyright -- I will do the paperwork to give these over asap. 1999-12-20 19:31:47 +00:00
itojun 8471c4a69a fix "netstat numbers". 1999-12-20 17:26:50 +00:00
jwise 81ed25dba3 Knee-jerk snprintf()-ism. 1999-12-20 17:08:52 +00:00
jwise be9a446256 G/C function used in old command parsing 1999-12-20 04:06:25 +00:00
jwise 4c0fbd4c92 Two things:
1.) fix a bug which caused coredumps when starting with no mode arguments
  2.) move to table-lookup for mode-specific command parsing as well.
      all command matching is now table-driven.
1999-12-20 03:45:01 +00:00
jwise 30af11dbd4 Sigh... this is the missing part of last night's final commit -- perform
the same simplification on mode parsing for the command line as for user
commands.

My apologies to anyone who tried to build systat this morning.
1999-12-16 17:15:48 +00:00
jwise 099afa1959 End special-casing of `start' and `interval' global commands.
Vastly simplify handling of mode switches, and short-syntax interval
changes.  Substring matching of mode names and commands will come
shortly, however the previous method of substring matching modes (it was
not available for commands) is currently not working.

TODO: implement table lookups for mode-specific commands.
1999-12-16 06:16:16 +00:00
jwise 420c21c43c Handle arguments to global commands. Note that the `interval' and
`start' global commands are still special cased, which will change
1999-12-16 04:49:32 +00:00
jwise b5f0c03b3a Backout unintended change 1999-12-16 04:41:49 +00:00
jwise 7fc29b6116 Add a file missed in last commit 1999-12-16 04:40:03 +00:00
jwise 06f376613f Rototill global command matching -- switch from ad-hoc tomfoolery to a
table lookup.  This will make prefix matching and so on easier.

Expect a similar change for mode-specific commands before too long.

While there, rename some structures with misleading names.

Watch this space for more changes soon.
1999-12-16 04:02:22 +00:00
fredb 2cfe71bc9a More fallout from CL* purge. 1999-12-05 18:54:34 +00:00
mrg ef2d33cbd1 add some percentages in here. 1999-11-27 05:58:04 +00:00
simonb 7f7397e603 Don't free "buf" in closebufcache() - initbufcache() only gets called
once per systat invocation, not each time we switch to the bufcache
display.

Fixes core dump noted by Andy Doran when switching back and forth to
bufcache display.
1999-11-15 23:39:33 +00:00
mrg 9042b087c4 avoid using CLBYTES (which is based on NBPG). 1999-11-15 10:54:40 +00:00
simonb b80f4eaf1d - Add `bufcache' display which shows buffer cache usage per filesystem,
ala the monitor(1) command for Ultrix.
- Allow `h' or `?' to show the command list (same as `:help').
- Sort commands in cmdtab.c and systat.1
1999-11-15 06:16:56 +00:00
soren 6fc41af333 Sync usage() with man page. 1999-11-11 03:06:04 +00:00
mrg 45cd15f3ed recognise "dty" the same as we do "tty" 1999-10-11 11:55:27 +00:00
mrg 345a3bce75 let "systat vmstat" say "1 user" not "1 users" 1999-10-10 01:07:03 +00:00
soren a87871bbec There's room in the systat-vmstat-iostat display, so allow four-letter
device names like e.g. ccd0 and print an extra digit of precision in
the 'sec' line like iostat(8) does.
1999-09-30 13:16:27 +00:00
chs 21eedb0ec1 the PMAP_NEW option is gone as the new interface is no longer optional. 1999-09-12 01:19:23 +00:00
ad aa707bd962 Add 'inet.' prefix to 'tcp', 'ip', 'tcpsyn' and 'icmp' displays.
Fixes PR: bin/8130 (Geoff C. Wing)
1999-08-02 17:27:27 +00:00
sommerfeld 728f40d730 Fix from PR7655: translation of keyboard command in systat is Wrong.
(breaks netstat's :ignore command for upper-case service names)
1999-08-02 02:01:57 +00:00
ad 5cd8715136 Formatting nits. 1999-07-30 16:08:59 +00:00
veego 03fd106af5 According to the previous commit the new process state should be SDEAD and
not SDYING, so s/SDYING/SDEAD/.
1999-07-23 08:56:13 +00:00
thorpej 3586621927 Update for SDEAD. 1999-07-22 18:16:05 +00:00
mjl d278ba3869 Enlarge disk names in labels from 3 to 7 to cater for things like raid0. 1999-06-29 18:14:15 +00:00
itohy 5bebc476c6 Fix CPU percentage of "systat ps".
Yes, the name of the member "pt_pctcpu" is confusing :-).
Use double instead of float.
1999-06-19 05:35:14 +00:00
ad 00116cf582 Add 4 new modes: ip, icmp, tcp, tcpsyn. XXX still some work to be done
on aesthetics and update modes.
1999-05-30 20:26:20 +00:00
lukem 3d538e05b6 also install as `sysstat'.
rationale: `nfsstat' is not `nfstat', and
other systems have a `sysstat' but not a `systat'.
1999-04-29 15:00:21 +00:00
ross c28735c5a8 Kill incorrect const in previous. 1999-04-24 23:54:56 +00:00
ross ef4ee3d458 Functional LP64 and type sanity fixes. 1999-04-24 23:36:36 +00:00
simonb 8ac2197100 Add an __RCSID. 1999-04-22 03:40:46 +00:00
mrg d2397ac5f7 completely remove Mach VM support. all that is left is the all the
header files as UVM still uses (most of) these.
1999-03-24 05:50:49 +00:00
garbled 9e44e9b578 More and more .Os cleanups. .Os is defined in the tmac.doc-common file,
so we shouldn't override it with versions in the manpages.  Many more to
come.
1999-03-22 18:16:34 +00:00
bgrayson 394d687b13 Minor printf mod, for when we print a 3-digit value, and the next update prints only two (leaving the last stale digit showing) 1999-03-04 03:02:02 +00:00
jwise 2dada8cc9b Document the new `ps' view. 1999-02-21 21:55:10 +00:00
jwise cfb46b6f4c Add a new `ps' view to systat, which shows process information. This
view is identical to the output of `ps aux' except that a.) the RSS and VSZ
fields are one character wider and b.) it shows a zero value for the RSS
and %MEM columns of processes which report a negative RSS.
1999-02-21 21:48:07 +00:00
jwise 063b11670a Add cross-references from eaach of these too the other. Note that top.1
is still in old man format.  Do we want to translate this to mandoc?  I
assume no, as this would make imports hard, so I didn't, but I'm not sure
what the best way to do this would be.
1999-02-19 18:44:58 +00:00
jwise 7e6a90d4b9 Show pid as well as user name and command in pigs view. Makes hopping to
another window and killing the errant process (or even just distinguishing
it from like processes) rather easier.
1999-02-19 04:59:00 +00:00
mrg 6efa5f3017 swap areas are not compiled into the kernel, from erik bertelsen, PR#6892 1999-01-28 03:28:53 +00:00
marc e803638497 since the return from swapctl can change from call to call, print the
"Disk" column each time.  Also, use sep->se_path, not
devname(sep->se_dev).
1998-12-26 07:05:08 +00:00
marc a97b85feaf display the seconds in the timestamp in the corner, too. 1998-12-26 06:38:42 +00:00
christos 24a4a811e5 char -> unsigned char 1998-12-19 22:26:13 +00:00
drochner 09eb0ffc9c avoid integer overflow in free memory report 1998-12-19 14:34:40 +00:00
mycroft 33360720ab Add missing braces, so PUTRATE() works correctly as an if clause. 1998-12-06 16:53:44 +00:00
ross f670fa10c5 Add { and } to shut up egcs. Reformat the more questionable code. 1998-08-25 20:59:36 +00:00
mycroft 28beaae04f const propagation. 1998-07-28 21:25:35 +00:00
drochner b2058e2f38 Fix handling of privileges - the gid was given up before dkinit()
was called.
Pass the gid to use for KVM access explicitely to dkinit(), the caller
decides whether to call setgid(getgid()) or not.
1998-07-19 17:47:07 +00:00
mrg 47abaab886 - KNF
- use snprintf
- don't overwrite the keyboard buffer (and make this sized on
  the window size).
1998-07-12 05:59:00 +00:00
mrg 2beab49a06 - use an array MAXHOSTNAMELEN+1 size to hold hostnames
- ensure hostname from gethostname() is nul-terminated in all cases
- minor KNF
- use MAXHOSTNAMELEN over various other values/defines
- be safe will buffers that hold hostnames
1998-07-06 06:45:41 +00:00
mycroft 1458227184 Fix pasto. 1998-05-17 18:18:18 +00:00
mycroft 746eb495af Don't display %cpu for zombies. It never decays, and makes the results look
odd.
1998-05-17 17:18:28 +00:00
kleink 7fd3999c5e No need to include <sys/socketvar.h>. 1998-04-02 11:18:25 +00:00
jtc 9a0063c6d6 Simply include -lcurses instead of -lcurses -ltermcap 1998-02-18 22:47:41 +00:00
perry ba7b5f16ff add -DPMAP_NEW if PMAP_NEW is on in mk.conf 1998-02-18 03:54:58 +00:00
mrg 45eb2a7d5d clean up memory totals in UVM case. 1998-02-09 15:29:52 +00:00
mrg 7bd27d00fd make "systat vmstat" much much much more UVM friendly. 1998-02-09 14:14:43 +00:00
mrg 279ce528ce add -DUVM to CPPFLAGS if defined(UVM) 1998-02-09 06:25:15 +00:00
mrg e42b5e70e3 build and run with -DUVM. this isn't yet finished but it does run and partially work. 1998-02-07 14:08:23 +00:00
lukem 8ba07ab0b3 use CPPFLAGS instead of CFLAGS 1997-10-24 09:00:17 +00:00
lukem 9ccb9cd874 fix .Nm usage, deprecate register, getopt returns -1 not EOF, s/[br]*/[ms]*/ 1997-10-19 23:36:20 +00:00
kleink 66105c37fc Lseek(2) usage cleanup: the use of L_SET/L_INCR/L_XTND is deprecated,
use SEEK_SET/SEEK_CUR/SEEK_END instead.
1997-08-25 19:31:43 +00:00
mrg d2be95ea7e update "systat vmstat" documentation to reality. 1997-07-25 01:59:42 +00:00
mrg 9fb5074a33 get at least *part* of "systat vmstat" right... 1997-07-25 01:15:09 +00:00
mrg 5941399374 - some KNF.
- use __RCSID().
- WARNS=1
1997-07-21 07:04:56 +00:00
mrg cd53f1ab76 WARNS?=1 1997-07-21 07:03:52 +00:00
mrg 1e987690a8 - some KNF.
- use __RCSID().
- WARNS=1
- use swapctl(2), rather than grovelling KVM.
1997-07-21 07:03:15 +00:00
jtc 8fd3f56f2c Use the new getmaxx and getmaxy macros instead of directly accessing
the private fields of WINDOW.
1997-05-24 00:48:24 +00:00
gwr 10e180cc49 Back out the .PATH.c changes. The .depend problem (and others)
will be fixed using the new .NOPATH make feature instead.
1997-05-08 21:11:01 +00:00
gwr 012e528f2e Use .PATH.c: ... 1997-05-06 20:44:56 +00:00
mikel 53704bc733 erase old Xs when printing new ones for swap usage; from Paul Boven in
PR bin/3431 with some changes by me.
1997-04-03 06:07:40 +00:00
explorer a030e0a1ae Message buffer passed to kvm_openfiles() should _POSIX2_LINE_MAX long; PR#3266 1997-03-03 22:12:19 +00:00
christos 8a0d2c8cb0 Fix PR1882+PR3171, swap display core-dumps from Paul Boven. 1997-02-02 19:20:55 +00:00
matthias a6c08e93f9 * revert broken handling of subcommands to the (working) 4.4Lite version. 1996-12-21 09:16:35 +00:00
scottr 823c2433dc Freshen up a bit:
- Replace deprecated sigblock() with sigprocmask()
 - Redraw the current display if SIGWINCH is caught
 - Style police
1996-12-13 19:26:18 +00:00
scottr 25e56cb761 Be explicit about iostat transfer rate by displaying `KBps' instead of
`Kps'.  As per (and noticed by) J.T.
1996-10-25 18:30:52 +00:00
explorer 661c82521c clear the screen at the correct time to avoid leaving garbage on the screen.
This happens when switching from address to :numbers display.

From FreeBSD pr bin/1425.
1996-08-11 04:19:16 +00:00
explorer 1350e82a8f remove nlist lookup of _dk_* 1996-08-11 04:16:28 +00:00
thorpej 1eaf5ee379 New userland code to read the statistics kept by the NetBSD generic
disk framework, from John M. Vinopal <banshee@gabriella.resort.com>
1996-05-10 23:16:30 +00:00
jtc cac62b2d65 Be pedantic, main() returns int in C. 1996-03-21 17:56:15 +00:00
ragge d05395713d Removed a couple of #ifdef vax causing systat to malfunction. 1996-03-15 22:19:23 +00:00
jonathan c82a4ed224 Update Makefiles for usr.bin/systat and usr.sbin/iostat to be
consistent with usr.bin/vmstat/Makefile wrt CLFAGS and -I, since
all three compile vmstat/names.c.  (Now compiles on a pmax.)
1995-12-22 08:04:24 +00:00
jtc 1bd0165884 iostat is in section 8; PR #1533 1995-09-27 19:46:12 +00:00
jtc 8ba230d554 vmstat is in section 8; PR #1532 1995-09-27 19:20:24 +00:00
jtc f1df59ade6 Sync with 4.4lite2 1995-08-31 22:11:37 +00:00
cgd b0246fc4cc update for new queue structures 1995-06-18 23:53:07 +00:00
mycroft c05dec805f Use inet_aton(), not inet_addr(). 1995-05-21 17:14:38 +00:00
mycroft 6480692679 Print out interrupt CPU time. 1995-05-17 15:51:47 +00:00
jtc 86f36c2670 Print error message and exit if TERM is not set.
From PR #1015.
1995-05-06 06:25:07 +00:00
cgd 5cac5e9c7c various includes, casts, and cleanups... 1995-04-29 05:54:42 +00:00
jtc d7bb47b09d vmunix -> netbsd 1995-04-27 18:22:55 +00:00
mycroft 67e80f483c Alphabetize. 1995-03-22 15:26:42 +00:00
mycroft 05fc3892b3 Use err*(3)/warn*(3). 1995-03-22 15:25:56 +00:00
mycroft 73ab328b89 Don't core dump on an illegal display type. Display a more specific error
message for an ambiguous type.
1995-03-22 15:20:31 +00:00
jtc 2f3cb7ae7d Changed to conform to NetBSD's new RCS Id convention. 1995-01-20 08:51:48 +00:00
jtc 12749a2a84 imported from 44lite 1995-01-20 08:30:50 +00:00