assert((io_u->flags & IO_U_F_FLIGHT) == 0);
io_u->flags |= IO_U_F_FLIGHT;
+ assert(io_u->file->flags & FIO_FILE_OPEN);
+
io_u->error = 0;
io_u->resid = 0;
int r;
td->io_u_queued++;
- if (td->io_u_queued > td->iodepth_batch) {
+ if (td->io_u_queued > td->o.iodepth_batch) {
r = td_io_commit(td);
if (r < 0)
return r;
int td_io_init(struct thread_data *td)
{
- if (td->io_ops->init)
- return td->io_ops->init(td);
+ int ret = 0;
- return 0;
+ if (td->io_ops->init) {
+ ret = td->io_ops->init(td);
+ if (ret && td->o.iodepth > 1)
+ log_err("fio: io engine init failed. Perhaps try reducing io dpeth?\n");
+ }
+
+ return ret;
}
int td_io_commit(struct thread_data *td)