stat: don't trust per_unit_log() if log is NULL
authorJens Axboe <axboe@fb.com>
Mon, 22 Aug 2016 19:23:29 +0000 (13:23 -0600)
committerJens Axboe <axboe@fb.com>
Mon, 22 Aug 2016 19:23:29 +0000 (13:23 -0600)
We return 'false' for that case, but it's not really false. Fixes
a sigbus error on sparc, without logging.

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

diff --git a/stat.c b/stat.c
index 552d88dde06797c9098820da224cd0891aab268e..74c2686c660ca33b76b12e85eefab3a68e933e7c 100644 (file)
--- a/stat.c
+++ b/stat.c
@@ -2457,12 +2457,12 @@ int calc_log_samples(void)
                        next = min(td->o.iops_avg_time, td->o.bw_avg_time);
                        continue;
                }
-               if (!per_unit_log(td->bw_log)) {
+               if (td->bw_log && !per_unit_log(td->bw_log)) {
                        tmp = add_bw_samples(td, &now);
                        if (tmp < next)
                                next = tmp;
                }
-               if (!per_unit_log(td->iops_log)) {
+               if (td->iops_log && !per_unit_log(td->iops_log)) {
                        tmp = add_iops_samples(td, &now);
                        if (tmp < next)
                                next = tmp;