stat: fix accumulation of latency buckets
authorVincent Fu <vincent.fu@wdc.com>
Thu, 21 Mar 2019 16:45:13 +0000 (12:45 -0400)
committerJens Axboe <axboe@kernel.dk>
Thu, 21 Mar 2019 16:53:39 +0000 (10:53 -0600)
The numbers of buckets for nsec, usec, and msec latencies may differ
from each other. So we need to iterate separately over the three types
of buckets.

Signed-off-by: Jens Axboe <axboe@kernel.dk>
stat.c

diff --git a/stat.c b/stat.c
index 66a13bc..ecef109 100644 (file)
--- a/stat.c
+++ b/stat.c
@@ -1684,7 +1684,11 @@ void sum_thread_stats(struct thread_stat *dst, struct thread_stat *src,
        }
        for (k = 0; k < FIO_IO_U_LAT_N_NR; k++) {
                dst->io_u_lat_n[k] += src->io_u_lat_n[k];
+       }
+       for (k = 0; k < FIO_IO_U_LAT_U_NR; k++) {
                dst->io_u_lat_u[k] += src->io_u_lat_u[k];
+       }
+       for (k = 0; k < FIO_IO_U_LAT_M_NR; k++) {
                dst->io_u_lat_m[k] += src->io_u_lat_m[k];
        }
        for (k = 0; k < FIO_IO_U_PLAT_NR; k++)