Date: Fri, 18 Jan 2008 21:42:34 +0100 From: Pieter de Goeje <pieter@degoeje.nl> To: cvs-src@freebsd.org Cc: src-committers@freebsd.org, cvs-all@freebsd.org, Peter Wemm <peter@freebsd.org> Subject: Re: cvs commit: src/usr.bin/vmstat Makefile vmstat.8 vmstat.c Message-ID: <200801182142.35019.pieter@degoeje.nl> In-Reply-To: <200712130236.lBD2aCWP029948@repoman.freebsd.org> References: <200712130236.lBD2aCWP029948@repoman.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--Boundary-00=_68QkHGLFIWDClGk Content-Type: text/plain; charset="iso-8859-15" Content-Transfer-Encoding: 7bit Content-Disposition: inline On Thursday 13 December 2007, Peter Wemm wrote: > peter 2007-12-13 02:36:11 UTC > > FreeBSD src repository > > Modified files: > usr.bin/vmstat Makefile vmstat.8 vmstat.c > Log: > Add the -H, -h and -P flags to vmstat. -P causes per-cpu output of > user/system/idle stats. -h feeds the memory column through > humanize_number() to reduce the amount of column overflowing. -H turns > this off. -h is turned on by default if stdout is a tty. > > Revision Changes Path > 1.13 +2 -2 src/usr.bin/vmstat/Makefile > 1.37 +9 -1 src/usr.bin/vmstat/vmstat.8 > 1.99 +196 -17 src/usr.bin/vmstat/vmstat.c I noticed vmstat dumps stats from all kern.smp.maxcpus CPUs on screen when using -P. Attached patch fixes the problem. Cheers, Pieter de Goeje --Boundary-00=_68QkHGLFIWDClGk Content-Type: text/x-diff; charset="iso-8859-15"; name="vmstat.patch" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="vmstat.patch" --- /usr/src/usr.bin/vmstat/vmstat.c 2007-12-14 02:38:20.000000000 +0100 +++ vmstat.c 2008-01-18 21:34:03.000000000 +0100 @@ -739,7 +739,7 @@ (void)printf(" faults "); if (Pflag) { for (i = 0; i < ncpus; i++) { - if (cpumask && (1ul << i)) + if (cpumask & (1ul << i)) printf("cpu%-2d ", i); } printf("\n"); @@ -976,7 +976,7 @@ /* devstats does this for cp_time */ for (i = 0; i <= maxid; i++) { - if (cpumask && (1ul << i) == 0) + if ((cpumask & (1ul << i)) == 0) continue; for (state = 0; state < CPUSTATES; ++state) { tmp = cur_cp_times[i * CPUSTATES + state]; @@ -987,7 +987,7 @@ over = 0; for (i = 0; i <= maxid; i++) { - if (cpumask && (1ul << i) == 0) + if ((cpumask & (1ul << i)) == 0) continue; total = 0; for (state = 0; state < CPUSTATES; ++state) --Boundary-00=_68QkHGLFIWDClGk--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200801182142.35019.pieter>