io_u->resid = 0;
if (td->io_ops->flags & FIO_SYNCIO) {
- fio_gettime(&io_u->issue_time, NULL);
+ if (fio_fill_issue_time(td))
+ fio_gettime(&io_u->issue_time, NULL);
/*
* only used for iolog
if (td->o.read_iolog_file)
memcpy(&td->last_issue, &io_u->issue_time,
sizeof(struct timeval));
-
- /*
- * for a sync engine, set the timeout upfront
- */
- if (mtime_since(&td->timeout_end, &io_u->issue_time)
- < IO_U_TIMEOUT)
- io_u_set_timeout(td);
}
if (io_u->ddir != DDIR_SYNC)
}
if ((td->io_ops->flags & FIO_SYNCIO) == 0) {
- fio_gettime(&io_u->issue_time, NULL);
+ if (fio_fill_issue_time(td))
+ fio_gettime(&io_u->issue_time, NULL);
/*
* only used for iolog
if (td->o.read_iolog_file)
memcpy(&td->last_issue, &io_u->issue_time,
sizeof(struct timeval));
-
- /*
- * async engine, set the timeout here
- */
- if (ret == FIO_Q_QUEUED &&
- (mtime_since(&td->timeout_end, &io_u->issue_time)
- < IO_U_TIMEOUT)) {
- io_u_set_timeout(td);
- }
}
return ret;
return put_file(td, f);
}
+
+int td_io_get_file_size(struct thread_data *td, struct fio_file *f)
+{
+ if (!td->io_ops->get_file_size)
+ return 0;
+
+ return td->io_ops->get_file_size(td, f);
+}