Recent changes (master)

Jens Axboe
2020-10-15T12:00:10Z

The following changes since commit 8cf503ce5956e4c287e13d5c7761a03fbb4b54cc:

Merge branch 'patch-1' of https://github.com/chengli-rutgers/fio into master (2020-10-13 13:07:37 -0600)

are available in the Git repository at:

git://git.kernel.dk/fio.git master

for you to fetch changes up to 8bfe330eb42739d503d35d0b7d96f98c5c544204:

Disallow offload IO mode for engines marked with FIO_NO_OFFLOAD (2020-10-14 20:11:56 -0600)

----------------------------------------------------------------
Jens Axboe (1):
Disallow offload IO mode for engines marked with FIO_NO_OFFLOAD

engines/io_uring.c | 2 +-
ioengines.c | 2 +-
ioengines.h | 3 ++-
3 files changed, 4 insertions(+), 3 deletions(-)

---

Diff of recent changes:

diff --git a/engines/io_uring.c b/engines/io_uring.c
index 69f48859..b997c8d8 100644
--- a/engines/io_uring.c
+++ b/engines/io_uring.c
@@ -806,7 +806,7 @@ static int fio_ioring_close_file(struct thread_data *td, struct fio_file *f)
static struct ioengine_ops ioengine = {
.name = "io_uring",
.version = FIO_IOOPS_VERSION,
- .flags = FIO_ASYNCIO_SYNC_TRIM,
+ .flags = FIO_ASYNCIO_SYNC_TRIM | FIO_NO_OFFLOAD,
.init = fio_ioring_init,
.post_init = fio_ioring_post_init,
.io_u_init = fio_ioring_io_u_init,
diff --git a/ioengines.c b/ioengines.c
index d3be8026..3e43ef2f 100644
--- a/ioengines.c
+++ b/ioengines.c
@@ -45,7 +45,7 @@ static bool check_engine_ops(struct thread_data *td, struct ioengine_ops *ops)
* async engines aren't reliable with offload
*/
if ((td->o.io_submit_mode == IO_MODE_OFFLOAD) &&
- !(ops->flags & FIO_FAKEIO)) {
+ (ops->flags & FIO_NO_OFFLOAD)) {
log_err("%s: can't be used with offloaded submit. Use a sync "
"engine\n", ops->name);
return true;
diff --git a/ioengines.h b/ioengines.h
index 54dadba2..fbe52fa4 100644
--- a/ioengines.h
+++ b/ioengines.h
@@ -77,7 +77,8 @@ enum fio_ioengine_flags {
FIO_NOSTATS = 1 << 12, /* don't do IO stats */
FIO_NOFILEHASH = 1 << 13, /* doesn't hash the files for lookup later. */
FIO_ASYNCIO_SYNC_TRIM
- = 1 << 14 /* io engine has async ->queue except for trim */
+ = 1 << 14, /* io engine has async ->queue except for trim */
+ FIO_NO_OFFLOAD = 1 << 15, /* no async offload */
};

/*