ping
On Fri, Aug 06, 2021 at 02:34:07PM -0700, Anindya Mukherjee wrote:
> ping
>
> > Hi,
> >
> > While running systat(1)'s iostat view in cumulative mode (activated by
> > pressing
> > 'b') I noticed that it divides the results by the refresh interval. This is
> > because the cumulative mode is implemented by setting last = 0, and then it
> > does
> > (current - last) / etime, thereby giving wrong cumulative results. This can
> > be
> > verified by comparing with `iostat -dI`. The attached diff fixes this.
> >
> > ok?
> >
> > Index: usr.bin/systat/iostat.c
> > ===================================================================
> > RCS file: /cvs/src/usr.bin/systat/iostat.c,v
> > retrieving revision 1.49
> > diff -u -p -r1.49 iostat.c
> > --- usr.bin/systat/iostat.c 28 Jun 2019 13:35:04 -0000 1.49
> > +++ usr.bin/systat/iostat.c 28 Jul 2021 19:04:41 -0000
> > @@ -167,9 +167,12 @@ void
> > print_io(void)
> > {
> > int n, count = 0;
> > -
> > int curr;
> > - etime = naptime;
> > +
> > + if (state == BOOT)
> > + etime = 1.0;
> > + else
> > + etime = naptime;
> >
> > /* XXX engine internals: save and restore curr_line for bcache */
> > curr = curr_line;