[PATCH] Add thinktime_spin parameter
[fio.git] / fio.c
diff --git a/fio.c b/fio.c
index 78dca9a09610e3140ae5eaabc7518012bff40abe..ff169f86247947d5192635dcc6295a6c68705e76 100644 (file)
--- a/fio.c
+++ b/fio.c
@@ -466,8 +466,16 @@ requeue:
                        unsigned long long b;
 
                        b = td->io_blocks[0] + td->io_blocks[1];
-                       if (!(b % td->thinktime_blocks))
-                               usec_sleep(td, td->thinktime);
+                       if (!(b % td->thinktime_blocks)) {
+                               int left;
+
+                               if (td->thinktime_spin)
+                                       __usec_sleep(td->thinktime_spin);
+
+                               left = td->thinktime - td->thinktime_spin;
+                               if (left)
+                                       usec_sleep(td, left);
+                       }
                }
        }