X-Git-Url: https://git.kernel.dk/?p=fio.git;a=blobdiff_plain;f=ioengines.c;h=b89a121b4526706cff19017b80ad2328a8687581;hp=958731dc3bfab9bda2d7765e61d3f31613b02946;hb=23a8e176c3725f3640eaaf31a0a4c7497366c40f;hpb=92330695e64a42fd5dc54a6970a4b8122d3cd80e diff --git a/ioengines.c b/ioengines.c index 958731dc..b89a121b 100644 --- a/ioengines.c +++ b/ioengines.c @@ -49,10 +49,6 @@ static int check_engine_ops(struct ioengine_ops *ops) log_err("%s: no getevents handler\n", ops->name); return 1; } - if (!ops->queue) { - log_err("%s: no queue handler\n", ops->name); - return 1; - } return 0; } @@ -299,6 +295,7 @@ int td_io_queue(struct thread_data *td, struct io_u *io_u) if (ddir_rw(ddir)) { td->io_issues[ddir]++; td->io_issue_bytes[ddir] += buflen; + td->rate_io_issue_bytes[ddir] += buflen; } ret = td->io_ops->queue(td, io_u); @@ -308,6 +305,7 @@ int td_io_queue(struct thread_data *td, struct io_u *io_u) if (ret == FIO_Q_BUSY && ddir_rw(ddir)) { td->io_issues[ddir]--; td->io_issue_bytes[ddir] -= buflen; + td->rate_io_issue_bytes[ddir] -= buflen; } /* @@ -344,10 +342,10 @@ int td_io_queue(struct thread_data *td, struct io_u *io_u) } else if (ret == FIO_Q_QUEUED) { int r; - if (ddir_rw(io_u->ddir)) { - td->io_u_queued++; + td->io_u_queued++; + + if (ddir_rw(io_u->ddir)) td->ts.total_io_u[io_u->ddir]++; - } if (td->io_u_queued >= td->o.iodepth_batch) { r = td_io_commit(td);