diff options
author | Chris Mason <chris.mason@fusionio.com> | 2012-08-27 18:27:59 -0400 |
---|---|---|
committer | Chris Mason <chris.mason@oracle.com> | 2012-08-27 18:27:59 -0400 |
commit | 42f8b6673a921c9851956275181a8ba3a499e189 (patch) | |
tree | acf1b29cb4f0f805b7fa460a4131f17da219281c | |
parent | 0147183d7ef0edc1b3473fdae19cb679bc0968be (diff) | |
download | iowatcher-42f8b6673a921c9851956275181a8ba3a499e189.tar.gz |
Fix divide by zero while calculating averages
Signed-off-by: Chris Mason <chris.mason@fusionio.com>
-rw-r--r-- | main.c | 9 |
1 files changed, 6 insertions, 3 deletions
@@ -669,9 +669,12 @@ static int __plot_cpu(struct plot *plot, int seconds, char *label, struct graph_line_data *gld = tf->mpstat_gld[i * MPSTAT_GRAPHS + gld_index]; double this_avg = 0; - for (gld_i = 0; gld_i < gld->stop_seconds; gld_i++) - this_avg += gld->data[i].sum / - gld->data[i].count;; + for (gld_i = 0; gld_i < gld->stop_seconds; gld_i++) { + if (gld->data[i].count) { + this_avg += gld->data[i].sum / + gld->data[i].count; + } + } this_avg /= gld->stop_seconds; |