NULL engine: ->commit() has side effects, make sure it always works
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
diff --git a/engines/null.c b/engines/null.c
index acb8cf4..86b9cbd 100644
--- a/engines/null.c
+++ b/engines/null.c
@@ -45,8 +45,11 @@
{
struct null_data *nd = td->io_ops->data;
- nd->events += nd->queued;
- nd->queued = 0;
+ if (!nd->events) {
+ nd->events = nd->queued;
+ nd->queued = 0;
+ }
+
return 0;
}
@@ -56,6 +59,8 @@
if (td->io_ops->flags & FIO_SYNCIO)
return FIO_Q_COMPLETED;
+ if (nd->events)
+ return FIO_Q_BUSY;
nd->io_us[nd->queued++] = io_u;
return FIO_Q_QUEUED;