Fix a function name typo in debug print
[fio.git] / io_u.c
diff --git a/io_u.c b/io_u.c
index 7420629740f458ca644fcc2de47891f359d78cd5..cb8fc4ad606154a89b0ce8d0c99e36cae32deda2 100644 (file)
--- a/io_u.c
+++ b/io_u.c
@@ -62,6 +62,7 @@ static uint64_t last_block(struct thread_data *td, struct fio_file *f,
 
        /*
         * Hmm, should we make sure that ->io_size <= ->real_file_size?
+        * -> not for now since there is code assuming it could go either.
         */
        max_size = f->io_size;
        if (max_size > f->real_file_size)
@@ -576,10 +577,6 @@ static unsigned int __get_next_buflen(struct thread_data *td, struct io_u *io_u,
                        }
                }
 
-               if (td->o.verify != VERIFY_NONE)
-                       buflen = (buflen + td->o.verify_interval - 1) &
-                               ~(td->o.verify_interval - 1);
-
                if (!td->o.bs_unaligned && is_power_of_2(minbs))
                        buflen &= ~(minbs - 1);
 
@@ -646,7 +643,7 @@ int io_u_quiesce(struct thread_data *td)
        }
 
        while (td->io_u_in_flight) {
-               int fio_unused ret;
+               int ret;
 
                ret = io_u_queued_complete(td, 1);
                if (ret > 0)
@@ -762,8 +759,10 @@ static enum fio_ddir get_rw_ddir(struct thread_data *td)
                ddir = DDIR_READ;
        else if (td_write(td))
                ddir = DDIR_WRITE;
-       else
+       else if (td_trim(td))
                ddir = DDIR_TRIM;
+       else
+               ddir = DDIR_INVAL;
 
        td->rwmix_ddir = rate_ddir(td, ddir);
        return td->rwmix_ddir;
@@ -1906,7 +1905,7 @@ static void init_icd(struct thread_data *td, struct io_completion_data *icd,
        icd->nr = nr;
 
        icd->error = 0;
-       for (ddir = DDIR_READ; ddir < DDIR_RWDIR_CNT; ddir++)
+       for (ddir = 0; ddir < DDIR_RWDIR_CNT; ddir++)
                icd->bytes_done[ddir] = 0;
 }
 
@@ -1945,7 +1944,7 @@ int io_u_sync_complete(struct thread_data *td, struct io_u *io_u)
                return -1;
        }
 
-       for (ddir = DDIR_READ; ddir < DDIR_RWDIR_CNT; ddir++)
+       for (ddir = 0; ddir < DDIR_RWDIR_CNT; ddir++)
                td->bytes_done[ddir] += icd.bytes_done[ddir];
 
        return 0;
@@ -1961,7 +1960,7 @@ int io_u_queued_complete(struct thread_data *td, int min_evts)
        int ret, ddir;
        struct timespec ts = { .tv_sec = 0, .tv_nsec = 0, };
 
-       dprint(FD_IO, "io_u_queued_completed: min=%d\n", min_evts);
+       dprint(FD_IO, "io_u_queued_complete: min=%d\n", min_evts);
 
        if (!min_evts)
                tvp = &ts;
@@ -1984,7 +1983,7 @@ int io_u_queued_complete(struct thread_data *td, int min_evts)
                return -1;
        }
 
-       for (ddir = DDIR_READ; ddir < DDIR_RWDIR_CNT; ddir++)
+       for (ddir = 0; ddir < DDIR_RWDIR_CNT; ddir++)
                td->bytes_done[ddir] += icd.bytes_done[ddir];
 
        return ret;
@@ -1995,7 +1994,7 @@ int io_u_queued_complete(struct thread_data *td, int min_evts)
  */
 void io_u_queued(struct thread_data *td, struct io_u *io_u)
 {
-       if (!td->o.disable_slat) {
+       if (!td->o.disable_slat && ramp_time_over(td)) {
                unsigned long slat_time;
 
                slat_time = utime_since(&io_u->start_time, &io_u->issue_time);