!(td->io_issues[DDIR_WRITE] % td->o.fsync_blocks) &&
td->io_issues[DDIR_WRITE] && should_fsync(td)) {
io_u->ddir = DDIR_SYNC;
- return 0;
+ goto out;
}
io_u->ddir = get_rw_ddir(td);
/*
* mark entry before potentially trimming io_u
*/
- if (!td->o.read_iolog && td_random(td) && !td->o.norandommap)
+ if (td_random(td) && !td->o.norandommap)
mark_random_map(td, io_u);
/*
* If using a write iolog, store this entry.
*/
+out:
if (td->o.write_iolog_file)
write_iolog_put(td, io_u);
add_bw_sample(td, idx, &icd->time);
io_u_mark_latency(td, msec);
- if ((td_rw(td) || td_write(td)) && idx == DDIR_WRITE)
+ if ((td_rw(td) || td_write(td)) && idx == DDIR_WRITE &&
+ td->o.verify != VERIFY_NONE)
log_io_piece(td, io_u);
icd->bytes_done[idx] += bytes;
if (io_u->end_io) {
- ret = io_u->end_io(io_u);
+ ret = io_u->end_io(td, io_u);
if (ret && !icd->error)
icd->error = ret;
}