diff --git a/usr.bin/vmstat/vmstat.8 b/usr.bin/vmstat/vmstat.8 index 4f5d6234d731..5aa5e6a8f265 100644 --- a/usr.bin/vmstat/vmstat.8 +++ b/usr.bin/vmstat/vmstat.8 @@ -1,4 +1,4 @@ -.\" $NetBSD: vmstat.8,v 1.12 1996/05/10 23:19:30 thorpej Exp $ +.\" $NetBSD: vmstat.8,v 1.13 1998/01/04 03:59:04 thorpej Exp $ .\" .\" Copyright (c) 1986, 1993 .\" The Regents of the University of California. All rights reserved. @@ -63,12 +63,7 @@ If no interval is specified, the default is 1 second. .TP \-f -Report on the number -.IR fork (2) -and -.IR vfork (2) -system calls since system startup, and the number of pages of virtual memory -involved in each. +Report fork statistics. .TP \-i Report on the number of interrupts taken by each device since system diff --git a/usr.bin/vmstat/vmstat.c b/usr.bin/vmstat/vmstat.c index 3708ad05884a..295dfd9d4d62 100644 --- a/usr.bin/vmstat/vmstat.c +++ b/usr.bin/vmstat/vmstat.c @@ -1,4 +1,4 @@ -/* $NetBSD: vmstat.c,v 1.39 1997/11/01 06:51:49 lukem Exp $ */ +/* $NetBSD: vmstat.c,v 1.40 1998/01/04 03:59:05 thorpej Exp $ */ /* * Copyright (c) 1980, 1986, 1991, 1993 @@ -43,7 +43,7 @@ __COPYRIGHT("@(#) Copyright (c) 1980, 1986, 1991, 1993\n\ #if 0 static char sccsid[] = "@(#)vmstat.c 8.2 (Berkeley) 3/1/95"; #else -__RCSID("$NetBSD: vmstat.c,v 1.39 1997/11/01 06:51:49 lukem Exp $"); +__RCSID("$NetBSD: vmstat.c,v 1.40 1998/01/04 03:59:05 thorpej Exp $"); #endif #endif /* not lint */ @@ -105,15 +105,13 @@ struct nlist namelist[] = { #ifdef notdef #define X_DEFICIT 13 { "_deficit" }, -#define X_FORKSTAT 14 - { "_forkstat" }, -#define X_REC 15 +#define X_REC 14 { "_rectime" }, -#define X_PGIN 16 +#define X_PGIN 15 { "_pgintime" }, -#define X_XSTATS 17 +#define X_XSTATS 16 { "_xstats" }, -#define X_END 18 +#define X_END 17 #else #define X_END 13 #endif @@ -163,9 +161,9 @@ long getuptime __P((void)); void printhdr __P((void)); long pct __P((long, long)); void usage __P((void)); +void doforkst __P((void)); #ifdef notdef void dotimes __P((void)); -void doforkst __P((void)); #endif int main __P((int, char **)); @@ -197,11 +195,9 @@ main(argc, argv) case 'c': reps = atoi(optarg); break; -#ifndef notdef case 'f': todo |= FORKSTAT; break; -#endif case 'i': todo |= INTRSTAT; break; @@ -293,10 +289,8 @@ main(argc, argv) } else if (reps) interval = 1; -#ifdef notdef if (todo & FORKSTAT) doforkst(); -#endif if (todo & MEMSTAT) domem(); if (todo & SUMSTAT) @@ -640,19 +634,16 @@ dosum() #endif } -#ifdef notdef void doforkst() { - struct forkstat fks; - kread(X_FORKSTAT, &fks, sizeof(struct forkstat)); - (void)printf("%d forks, %d pages, average %.2f\n", - fks.cntfork, fks.sizfork, (double)fks.sizfork / fks.cntfork); - (void)printf("%d vforks, %d pages, average %.2f\n", - fks.cntvfork, fks.sizvfork, (double)fks.sizvfork / fks.cntvfork); + kread(X_SUM, &sum, sizeof(sum)); + (void)printf("%u forks total\n", sum.v_forks); + (void)printf("%u forks blocked parent\n", sum.v_forks_ppwait); + (void)printf("%u forks shared address space with parent\n", + sum.v_forks_sharevm); } -#endif void dkstats()