|
|
002e55 |
From ff3aa922570c22b99b7ae8714e04a79d0d0eddb7 Mon Sep 17 00:00:00 2001
|
|
|
002e55 |
From: Jens Axboe <axboe@kernel.dk>
|
|
|
002e55 |
Date: Tue, 20 Nov 2018 11:59:36 -0700
|
|
|
002e55 |
Subject: [PATCH] Kill "No I/O performed by ..." message
|
|
|
002e55 |
|
|
|
002e55 |
We keep finding false triggers for this, and it's driving me
|
|
|
002e55 |
nuts. Kill it with fire.
|
|
|
002e55 |
|
|
|
002e55 |
Signed-off-by: Jens Axboe <axboe@kernel.dk>
|
|
|
002e55 |
---
|
|
|
002e55 |
backend.c | 19 +------------------
|
|
|
002e55 |
1 file changed, 1 insertion(+), 18 deletions(-)
|
|
|
002e55 |
|
|
|
002e55 |
Index: fio-3.7/backend.c
|
|
|
002e55 |
===================================================================
|
|
|
002e55 |
--- fio-3.7.orig/backend.c
|
|
|
002e55 |
+++ fio-3.7/backend.c
|
|
|
002e55 |
@@ -1519,7 +1519,7 @@ static void *thread_main(void *data)
|
|
|
002e55 |
struct sk_out *sk_out = fd->sk_out;
|
|
|
002e55 |
uint64_t bytes_done[DDIR_RWDIR_CNT];
|
|
|
002e55 |
int deadlock_loop_cnt;
|
|
|
002e55 |
- bool clear_state, did_some_io;
|
|
|
002e55 |
+ bool clear_state;
|
|
|
002e55 |
int ret;
|
|
|
002e55 |
|
|
|
002e55 |
sk_out_assign(sk_out);
|
|
|
002e55 |
@@ -1738,7 +1738,6 @@ static void *thread_main(void *data)
|
|
|
002e55 |
|
|
|
002e55 |
memset(bytes_done, 0, sizeof(bytes_done));
|
|
|
002e55 |
clear_state = false;
|
|
|
002e55 |
- did_some_io = false;
|
|
|
002e55 |
|
|
|
002e55 |
while (keep_running(td)) {
|
|
|
002e55 |
uint64_t verify_bytes;
|
|
|
002e55 |
@@ -1816,9 +1815,6 @@ static void *thread_main(void *data)
|
|
|
002e55 |
td_ioengine_flagged(td, FIO_UNIDIR))
|
|
|
002e55 |
continue;
|
|
|
002e55 |
|
|
|
002e55 |
- if (ddir_rw_sum(bytes_done))
|
|
|
002e55 |
- did_some_io = true;
|
|
|
002e55 |
-
|
|
|
002e55 |
clear_io_state(td, 0);
|
|
|
002e55 |
|
|
|
002e55 |
fio_gettime(&td->start, NULL);
|
|
|
002e55 |
@@ -1839,19 +1835,6 @@ static void *thread_main(void *data)
|
|
|
002e55 |
break;
|
|
|
002e55 |
}
|
|
|
002e55 |
|
|
|
002e55 |
- /*
|
|
|
002e55 |
- * If td ended up with no I/O when it should have had,
|
|
|
002e55 |
- * then something went wrong unless FIO_NOIO or FIO_DISKLESSIO.
|
|
|
002e55 |
- * (Are we not missing other flags that can be ignored ?)
|
|
|
002e55 |
- */
|
|
|
002e55 |
- if ((td->o.size || td->o.io_size) && !ddir_rw_sum(bytes_done) &&
|
|
|
002e55 |
- !did_some_io && !td->o.create_only &&
|
|
|
002e55 |
- !(td_ioengine_flagged(td, FIO_NOIO) ||
|
|
|
002e55 |
- td_ioengine_flagged(td, FIO_DISKLESSIO)))
|
|
|
002e55 |
- log_err("%s: No I/O performed by %s, "
|
|
|
002e55 |
- "perhaps try --debug=io option for details?\n",
|
|
|
002e55 |
- td->o.name, td->io_ops->name);
|
|
|
002e55 |
-
|
|
|
002e55 |
td_set_runstate(td, TD_FINISHING);
|
|
|
002e55 |
|
|
|
002e55 |
update_rusage_stat(td);
|