iolog: fix reported defect from coverity scan
[fio.git] / iolog.c
diff --git a/iolog.c b/iolog.c
index b4c7a8f13157531be4f4d426ebc9e8a32bf50bcc..f52a9a80f7ef4e9546e1f0acf159a2eb6d3e255f 100644 (file)
--- a/iolog.c
+++ b/iolog.c
@@ -862,7 +862,12 @@ void setup_log(struct io_log **log, struct log_params *p,
                l->log_ddir_mask = LOG_OFFSET_SAMPLE_BIT;
        if (l->log_prio)
                l->log_ddir_mask |= LOG_PRIO_SAMPLE_BIT;
-       if (l->td->o.log_max == IO_LOG_SAMPLE_BOTH)
+       /*
+        * The bandwidth-log option generates agg-read_bw.log,
+        * agg-write_bw.log and agg-trim_bw.log for which l->td is NULL.
+        * Check if l->td is valid before dereferencing it.
+        */
+       if (l->td && l->td->o.log_max == IO_LOG_SAMPLE_BOTH)
                l->log_ddir_mask |= LOG_AVG_MAX_SAMPLE_BIT;
 
        INIT_FLIST_HEAD(&l->chunk_list);