Commit Graph

289 Commits

Author SHA1 Message Date
ryo
55563c97ca "vmstat -ie[v]" auto fit to minimum columns
Reviewed by msaitoh@
2017-01-05 07:53:20 +00:00
pgoyette
c0a30d4dc7 Adapt to use of bintime(9) for kernel history timestamps (7.99.55). 2017-01-05 03:42:27 +00:00
pgoyette
09c45791e2 Fix error handling confusion between error and errno 2017-01-04 01:29:18 +00:00
pgoyette
394eed3eed Adapt to new version of the sysctl export structure 2017-01-04 01:06:26 +00:00
pgoyette
58e3ff39b3 Use appropriate PRI* format specifiers for fixed-bit-size numbers
Should fix i386 build.
2017-01-02 09:24:54 +00:00
pgoyette
ba8c50ff8b For kvm-based kernhist code, print size of history table and "next free"
pointer, same as we do for sysctl-based code.
2017-01-02 02:08:05 +00:00
pgoyette
6a4fc5e568 Restore the kvm-grovelling code for use on crash files (where sysctl(3)
is not available).  Otherwise, this would always report on the current
running kernel regardless of the use of -M option.
2017-01-02 01:48:56 +00:00
pgoyette
93058c7f3d For kernel history display, replace the kvm grovelling with the newly
available sysctl access to the history data.

XXX vmstat still uses kvm for several other displays
2017-01-02 01:02:19 +00:00
mrg
1383c0c74f build vmstat as n64 on mips64. only kernel histories and hash stats
need to be fixed fot this to be reverted.
2016-12-29 23:42:38 +00:00
christos
bb762fe5ee No point in using float here; makes evbmips64 need __truncdfsf2, and that
causes static linking issues because of softfloat.
2016-10-04 17:36:21 +00:00
sevan
39bbc68a3b Drop main() prototype. 2016-09-05 00:40:28 +00:00
christos
e33113ab6d Work around gcc on sparc64 bug 2016-03-06 18:01:28 +00:00
dennis
7ad3371ebc Update stats-keeping in sys/kern/vfs_cache.c to remove (most)
races while allowing consistent lockless sampling of the per-cpu
statistics without atomic operations.  Update comment describing
the locking protocol to include this.

These files were fumble-fingered out of the last commit.
2014-12-24 20:01:21 +00:00
skrll
f6dcbec3a9 Trailing whitespace. 2014-09-12 16:25:55 +00:00
skrll
e52f4ab9a5 Print the cpu in the kernhist record. 2014-09-12 16:25:29 +00:00
nakayama
653203959c Use u_long to avoid negative value outputs. 2014-07-12 20:04:31 +00:00
joerg
99d9473857 Init summary counters. 2014-06-14 04:06:54 +00:00
joerg
11e7f587a5 Fix format string for ILP32. 2014-06-14 01:26:59 +00:00
joerg
67c88a0d78 Use kern.pool for the live system. 2014-06-13 19:10:01 +00:00
joerg
7be9a8f800 Remove unused headers. 2014-06-13 11:26:37 +00:00
joerg
6cf722d5a8 GC left-over kread. 2014-06-03 21:56:30 +00:00
joerg
472ed4a521 Use CPU statistics from uvmexp when possible. 2014-06-03 21:56:03 +00:00
joerg
201b45ebb5 Use kern.clockrate if possible. 2014-06-03 21:45:41 +00:00
joerg
100b00cbbc Convert the remaining uvmexp users to the sysctl as default source. 2014-06-03 21:41:56 +00:00
joerg
5b23be7ac8 Use vm.uvmexp data as much as possible for vmstat -s.
Temporarily disable shadowing warning until the other users are cleaned
up.
2014-06-03 21:31:54 +00:00
joerg
94adc2671a Provide sysctl for namecache statistics. 2014-06-03 21:16:15 +00:00
joerg
93b8079710 GC unused variables. 2014-06-02 22:57:50 +00:00
joerg
11c4049413 Drop kvm-based access for driver statistics. 2014-06-02 19:29:00 +00:00
joerg
8670ce0cf0 Make missing kern.evcnt an error, don't try to fallback to kmem use. 2014-06-02 19:16:10 +00:00
hannken
42c8d67c49 Add a global vnode cache:
- vcache_get() retrieves a referenced and initialised vnode / fs node pair.
- vcache_remove() removes a vnode / fs node pair from the cache.

On cache miss vcache_get() calls new vfs operation vfs_loadvnode() to
initialise a vnode / fs node pair.  This call is guaranteed exclusive,
no other thread will try to load this vnode / fs node pair.

Convert ufs/ext2fs, ufs/ffs and ufs/mfs to use this interface.

Remove now unused ufs/ufs_ihash

Discussed on tech-kern.

Welcome to 6.99.41
2014-05-08 08:21:53 +00:00
dsl
dc210c7fbd Remove some pointless inclusions os sys/user.h 2014-02-19 20:42:14 +00:00
rmind
df64447ca6 Remove cpu_queue (and thus eleminate another use of CIRCLEQ) by replacing
its uses with cpu_infos array.  Extra testing by christos@.
2013-11-24 21:58:38 +00:00
mrg
5517e5441c add a row with totals for some pool statistics. 2013-11-10 05:16:10 +00:00
chs
ad0d9d79c0 fix operation on core files: cur_drive.io_name is an embedded array
in the structure we already fetched, not a pointer, so don't try to
dereference its address as a kernel address.
2012-11-13 14:09:58 +00:00
para
308636e770 remove malloc(9) output function from vmstat
it is not required and working any more
2012-04-29 16:23:56 +00:00
matt
d34c2845b8 Use C89 function definitions 2012-03-20 20:34:57 +00:00
christos
81aad1d7e8 use warn instead of perror. 2011-10-15 21:59:48 +00:00
christos
76f57a76c2 unbreak -f -H -h, etc, part 1
- get nlist once in the beginning and fix the flags. Not each time! It is
not like the kernel will change it symbols in the middle of the run.
2011-10-15 21:06:05 +00:00
jym
37232010ea Use __arraycount(), as done above. 2011-09-21 12:08:02 +00:00
joerg
a12e209ee8 Mark usage as static and __dead. 2011-09-06 18:44:46 +00:00
christos
103ef387e2 document that we are using non-literal string formats. 2011-08-17 13:54:31 +00:00
yamt
b0bc17c5a1 dopoolcache: don't print unused caches unless verbose 2011-07-26 13:24:38 +00:00
joerg
a216da57a6 Default to -Wno-sign-compare -Wno-pointer-sign for clang.
Push -Wno-array-bounds down to the cases that depend on it.
Selectively disable warnings for 3rd party software or non-trivial
issues to be reviewed later to get clang -Werror to build most of the
tree.
2011-05-26 12:56:24 +00:00
mrg
8169e46991 move and rename the uvm history code out of uvm_stat to "kernhist".
rename "UVMHIST" option to enable the uvm histories.

TODO:
- make UVMHIST properly depend upon KERNHIST
- enable dynamic registration of histories.  this is mostly just
  allocating something in a bitmap, and is only for viewing multiple
  histories in a merged form.


tested on amd64 and sparc64.
2011-05-17 04:18:05 +00:00
nakayama
54b4b1358f Fix header, format and total count of system interrupt counters. 2011-02-16 12:58:38 +00:00
mlelstv
1d04f1ffaf dosum also needs getnlist 2011-02-05 13:12:07 +00:00
christos
50e452f9f7 deal with detecting the first and last cpu differently. 2011-01-31 19:41:19 +00:00
matt
c1edd37ce1 Make sure to getnlist in dovmstat 2011-01-31 18:56:04 +00:00
matt
45362e3914 Defer nlist processing until we know we need to it. If everything can be
obtained via sysctl, we can skip it entirely.  This means we can run even
if not setgid.

getuptime will now use sysctl/clock_gettime if memf is NULL.
doevcnt now sues sysctl(kern.evcnt) is memf is NULL.  It falls back to
groveling if sysctl returns an error of ENOENT.
dointr will call doevcnt to evcnt based intr stats.
2011-01-29 18:10:08 +00:00
christos
fdbe2a0785 can't play games with structure names since cpu_data refers to cpu_info, so
provide our own copy for everything.
2010-12-25 23:36:59 +00:00