[PATCH] Misc: stall progress ouput during file creation, ini_file frees.
diff --git a/fio.c b/fio.c
index 3cc0989..b53a58e 100644
--- a/fio.c
+++ b/fio.c
@@ -43,6 +43,7 @@
static char run_str[MAX_JOBS + 1];
int shm_id = 0;
static struct timeval genesis;
+static int temp_stall_ts;
static void print_thread_status(void);
@@ -960,6 +961,8 @@
return 1;
}
+ temp_stall_ts = 1;
+
if (!extend) {
oflags = O_CREAT | O_TRUNC;
fprintf(f_out, "%s: Laying out IO file (%LuMiB)\n", td->name, size >> 20);
@@ -971,11 +974,13 @@
td->fd = open(td->file_name, O_WRONLY | oflags, 0644);
if (td->fd < 0) {
td_verror(td, errno);
+ temp_stall_ts = 0;
return 1;
}
if (!extend && ftruncate(td->fd, td->file_size) == -1) {
td_verror(td, errno);
+ temp_stall_ts = 0;
return 1;
}
@@ -1009,6 +1014,7 @@
else if (td->create_fsync)
fsync(td->fd);
+ temp_stall_ts = 0;
close(td->fd);
td->fd = -1;
free(b);
@@ -1570,6 +1576,9 @@
char eta_str[32];
double perc = 0.0;
+ if (temp_stall_ts)
+ return;
+
eta_secs = malloc(thread_number * sizeof(int));
memset(eta_secs, 0, thread_number * sizeof(int));
diff --git a/init.c b/init.c
index de9cb49..ee9ab7d 100644
--- a/init.c
+++ b/init.c
@@ -1118,7 +1118,9 @@
return 1;
if (parse_jobs_ini(ini_file[i]))
return 1;
+ free(ini_file[i]);
}
+ free(ini_file);
return 0;
}