projects
/
fio.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fio 3.12
[fio.git]
/
engines
/
libaio.c
diff --git
a/engines/libaio.c
b/engines/libaio.c
index 7d59df3869f12238d3ebdefc6ae4f85145b9de85..7ac36b236cdf91a33f31ff738176d0fadd8c4235 100644
(file)
--- a/
engines/libaio.c
+++ b/
engines/libaio.c
@@
-169,7
+169,8
@@
static int fio_libaio_getevents(struct thread_data *td, unsigned int min,
events += r;
else if ((min && r == 0) || r == -EAGAIN) {
fio_libaio_commit(td);
events += r;
else if ((min && r == 0) || r == -EAGAIN) {
fio_libaio_commit(td);
- usleep(100);
+ if (actual_min)
+ usleep(10);
} else if (r != -EINTR)
break;
} while (events < min);
} else if (r != -EINTR)
break;
} while (events < min);
@@
-177,7
+178,8
@@
static int fio_libaio_getevents(struct thread_data *td, unsigned int min,
return r < 0 ? r : events;
}
return r < 0 ? r : events;
}
-static int fio_libaio_queue(struct thread_data *td, struct io_u *io_u)
+static enum fio_q_status fio_libaio_queue(struct thread_data *td,
+ struct io_u *io_u)
{
struct libaio_data *ld = td->io_ops_data;
{
struct libaio_data *ld = td->io_ops_data;
@@
-205,6
+207,8
@@
static int fio_libaio_queue(struct thread_data *td, struct io_u *io_u)
return FIO_Q_BUSY;
do_io_u_trim(td, io_u);
return FIO_Q_BUSY;
do_io_u_trim(td, io_u);
+ io_u_mark_submit(td, 1);
+ io_u_mark_complete(td, 1);
return FIO_Q_COMPLETED;
}
return FIO_Q_COMPLETED;
}