On Thu, 2 May 2019 at 19:31, Left Right <olegsivokon@xxxxxxxxx> wrote: > > Thanks a lot for your answer. Just to clarify, the reason I wanted to > know this isn't really data validation. It's important for > understanding of the results of my benchmarks. Since the program that > I'm testing is a kind of iSCSI server, which needs to, for example, > acknowledge writes based on user's policy pertaining as to how far the > data had propagated, a read from a block with a write pending might be > served from the server's cache, rather than going the full circle to > the physical storage and back. > > Thus, understanding the percentage of such overlaps would be very > important for me. So, I was wondering if there is any way of > controlling this behavior. What Robert said is definitely a way to achieve what you're interested in - if you use verify_backlog (https://fio.readthedocs.io/en/latest/fio_doc.html#cmdoption-arg-verify-backlog ) along with all the usual verify options your reads will be only for data that has been written. A different option to look at if you're only worried about avoiding collisions between pending I/Os is serialize_overlap (https://fio.readthedocs.io/en/latest/fio_doc.html#cmdoption-arg-serialize-overlap )... -- Sitsofe | http://sucs.org/~sits/