rdma engine graceful teardown
[fio.git] / ioengines.c
index 1a0898de701e349acdd9f4a2c1337504374334ec..bb7833f120a6c5a62ba839750c15bb2e170e8582 100644 (file)
@@ -208,6 +208,16 @@ int td_io_getevents(struct thread_data *td, unsigned int min, unsigned int max,
 {
        int r = 0;
 
+       /*
+        * For ioengine=rdma one side operation RDMA_WRITE or RDMA_READ,
+        * server side gets a message from the client
+        * side that the task is finished, and
+        * td->done is set to 1 after td_io_commit(). In this case,
+        * there is no need to reap complete event in server side.
+        */
+       if (td->done)
+               return 0;
+
        if (min > 0 && td->io_ops->commit) {
                r = td->io_ops->commit(td);
                if (r < 0)