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);
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);
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;
}
else if (td->create_fsync)
fsync(td->fd);
+ temp_stall_ts = 0;
close(td->fd);
td->fd = -1;
free(b);
else if (t_eta)
eta_sec = t_eta;
else
- eta_sec = INT_MAX;
+ eta_sec = 0;
} else {
/*
* thread is already done or waiting for fsync
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));
* Wait for the started threads to transition to
* TD_INITIALIZED.
*/
- printf("fio: Waiting for threads to initialize...\n");
gettimeofday(&this_start, NULL);
left = this_jobs;
while (left) {
/*
* start created threads (TD_INITIALIZED -> TD_RUNNING).
*/
- printf("fio: Go for launch\n");
for (i = 0; i < thread_number; i++) {
td = &threads[i];