[BACK]Return to iostat.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / systat

Diff for /src/usr.bin/systat/iostat.c between version 1.47 and 1.48

version 1.47, 2017/04/16 14:24:03 version 1.48, 2019/05/08 23:54:13
Line 43 
Line 43 
 #include "systat.h"  #include "systat.h"
   
 #include "dkstats.h"  #include "dkstats.h"
 extern struct _disk     cur, last;  extern struct _disk cur, last;
 struct bcachestats      bclast, bccur;  struct bcachestats bclast, bccur;
   
 static double etime;  static double etime;
   
Line 87 
Line 87 
         FLD_IO_WTPS, FLD_IO_SEC, FLD_IO_SVAL, FLD_IO_SSTR, NULL          FLD_IO_WTPS, FLD_IO_SEC, FLD_IO_SVAL, FLD_IO_SSTR, NULL
 };  };
   
   static enum state { BOOT, TIME } state = TIME;
   
   static int
   io_keyboard_callback(int ch)
   {
           switch (ch) {
           case 'b':
                   state = BOOT;
                   break;
           case 't':
                   state = TIME;
                   break;
           default:
                   return keyboard_callback(ch);
           }
           return 0;
   }
   
 /* Define view managers */  /* Define view managers */
 struct view_manager iostat_mgr = {  struct view_manager iostat_mgr = {
         "Iostat", select_io, read_io, NULL, print_header,          "Iostat", select_io, read_io, NULL, print_header,
         print_io, keyboard_callback, NULL, NULL          print_io, io_keyboard_callback, NULL, NULL
 };  };
   
   
Line 115 
Line 132 
         size_t size;          size_t size;
   
         dkreadstats();          dkreadstats();
           if (state == BOOT) {
                   unsigned int dn;
                   for (dn = 0; dn < last.dk_ndrive; dn++) {
                           last.dk_rbytes[dn] = 0;
                           last.dk_wbytes[dn] = 0;
                           last.dk_rxfer[dn] = 0;
                           last.dk_wxfer[dn] = 0;
                   }
           }
         dkswap();          dkswap();
         num_disp = cur.dk_ndrive + 1;          num_disp = cur.dk_ndrive + 1;
   
Line 130 
Line 156 
         if (bclast.numbufs == 0)          if (bclast.numbufs == 0)
                 bclast = bccur;                  bclast = bccur;
   
           if (state == BOOT)
                   memset(&bclast, 0, sizeof(bclast));
   
         return 0;          return 0;
 }  }
   
Line 173 
Line 202 
         for (v = views_io; v->name != NULL; v++)          for (v = views_io; v->name != NULL; v++)
                 add_view(v);                  add_view(v);
   
         return(1);          return (1);
 }  }
   
 void  void
Line 206 
Line 235 
 showdrive(int dn)  showdrive(int dn)
 {  {
         print_fld_str(FLD_IO_DEVICE, cur.dk_name[dn]);          print_fld_str(FLD_IO_DEVICE, cur.dk_name[dn]);
         print_fld_size(FLD_IO_READ, cur.dk_rbytes[dn]/etime);          print_fld_size(FLD_IO_READ, cur.dk_rbytes[dn] / etime);
         print_fld_size(FLD_IO_WRITE, cur.dk_wbytes[dn]/ etime);          print_fld_size(FLD_IO_WRITE, cur.dk_wbytes[dn] / etime);
         print_fld_size(FLD_IO_RTPS, cur.dk_rxfer[dn] / etime);          print_fld_size(FLD_IO_RTPS, cur.dk_rxfer[dn] / etime);
         print_fld_size(FLD_IO_WTPS, cur.dk_wxfer[dn] / etime);          print_fld_size(FLD_IO_WTPS, cur.dk_wxfer[dn] / etime);
         print_fld_float(FLD_IO_SEC, ATIME(cur.dk_time, dn) / etime, 1);          print_fld_float(FLD_IO_SEC, ATIME(cur.dk_time, dn) / etime, 1);

Legend:
Removed from v.1.47  
changed lines
  Added in v.1.48