On 2019-01-19 16:09:05, Ted Unangst <[email protected]> wrote:
> Bryan Linton wrote:
> > Hello tech@,
> > 
> > I'd appreciate it if someone could review both this patch and my
> > analysis.
> 
> There is no reason for etime to be a global. We can make it a local with the
> correct value in the two functions that use it, avoiding future problems as
> well.
> 

I can confirm that your patch fixes the error as well, and is
probably the better option since it removes a global.

Thank you for reviewing everything.

-- 
Bryan

> Index: vmstat.c
> ===================================================================
> RCS file: /cvs/src/usr.bin/systat/vmstat.c,v
> retrieving revision 1.89
> diff -u -p -r1.89 vmstat.c
> --- vmstat.c  17 Nov 2018 23:10:08 -0000      1.89
> +++ vmstat.c  19 Jan 2019 21:06:38 -0000
> @@ -97,7 +97,6 @@ int select_vm(void);
>  int vm_keyboard_callback(int);
>  
>  static       time_t t;
> -static       double etime;
>  static       float hertz;
>  static       int nintr;
>  static       long *intrloc;
> @@ -336,6 +335,7 @@ showkre(void)
>       u_int64_t inttotal, intcnt;
>       int i, l, c;
>       static int failcnt = 0, first_run = 0;
> +     double etime;
>  
>       if (state == TIME) {
>               if (!first_run) {
> @@ -676,7 +676,9 @@ copyinfo(struct Info *from, struct Info 
>  static void
>  dinfo(int dn, int c)
>  {
> -     double words, atime;
> +     double words, atime, etime;
> +
> +     etime = naptime;
>  
>       c += DISKCOL;

Reply via email to