aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Mason <chris.mason@fusionio.com>2012-08-27 18:27:59 -0400
committerChris Mason <chris.mason@oracle.com>2012-08-27 18:27:59 -0400
commit42f8b6673a921c9851956275181a8ba3a499e189 (patch)
treeacf1b29cb4f0f805b7fa460a4131f17da219281c
parent0147183d7ef0edc1b3473fdae19cb679bc0968be (diff)
downloadiowatcher-42f8b6673a921c9851956275181a8ba3a499e189.tar.gz
Fix divide by zero while calculating averages
Signed-off-by: Chris Mason <chris.mason@fusionio.com>
-rw-r--r--main.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/main.c b/main.c
index f2945fa..38f28bd 100644
--- a/main.c
+++ b/main.c
@@ -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;