stat: reset_io_stats: fix a problem, rearrange some code
authorVincent Fu <Vincent.Fu@sandisk.com>
Sun, 16 Apr 2017 19:04:26 +0000 (15:04 -0400)
committerJens Axboe <axboe@fb.com>
Wed, 3 May 2017 14:49:37 +0000 (08:49 -0600)
1) Make sure all the io_u_lat_u/m are reset
2) Only need to zero out total_submit/complete once
3) Reset total/short/drop_io_u inside the other loop that iterates over data directions

Signed-off-by: Jens Axboe <axboe@fb.com>
stat.c

diff --git a/stat.c b/stat.c
index 8770ae28920e5a484cc04ec12579e8b54a777ec5..6e47c34cbbcaf528a4951519c8383b0e8e6b9c96 100644 (file)
--- a/stat.c
+++ b/stat.c
@@ -2171,6 +2171,9 @@ void reset_io_stats(struct thread_data *td)
 
                ts->io_bytes[i] = 0;
                ts->runtime[i] = 0;
 
                ts->io_bytes[i] = 0;
                ts->runtime[i] = 0;
+               ts->total_io_u[i] = 0;
+               ts->short_io_u[i] = 0;
+               ts->drop_io_u[i] = 0;
 
                for (j = 0; j < FIO_IO_U_PLAT_NR; j++)
                        ts->io_u_plat[i][j] = 0;
 
                for (j = 0; j < FIO_IO_U_PLAT_NR; j++)
                        ts->io_u_plat[i][j] = 0;
@@ -2180,17 +2183,15 @@ void reset_io_stats(struct thread_data *td)
                ts->io_u_map[i] = 0;
                ts->io_u_submit[i] = 0;
                ts->io_u_complete[i] = 0;
                ts->io_u_map[i] = 0;
                ts->io_u_submit[i] = 0;
                ts->io_u_complete[i] = 0;
+       }
+
+       for (i = 0; i < FIO_IO_U_LAT_U_NR; i++)
                ts->io_u_lat_u[i] = 0;
                ts->io_u_lat_u[i] = 0;
+       for (i = 0; i < FIO_IO_U_LAT_M_NR; i++)
                ts->io_u_lat_m[i] = 0;
                ts->io_u_lat_m[i] = 0;
-               ts->total_submit = 0;
-               ts->total_complete = 0;
-       }
 
 
-       for (i = 0; i < 3; i++) {
-               ts->total_io_u[i] = 0;
-               ts->short_io_u[i] = 0;
-               ts->drop_io_u[i] = 0;
-       }
+       ts->total_submit = 0;
+       ts->total_complete = 0;
 }
 
 static void __add_stat_to_log(struct io_log *iolog, enum fio_ddir ddir,
 }
 
 static void __add_stat_to_log(struct io_log *iolog, enum fio_ddir ddir,