init: ensure that read/write use the same random seed for verify
authorJens Axboe <axboe@kernel.dk>
Tue, 17 Apr 2018 23:48:43 +0000 (17:48 -0600)
committerJens Axboe <axboe@kernel.dk>
Tue, 17 Apr 2018 23:51:40 +0000 (17:51 -0600)
commita2e313142546aa5cb95ba7cb3708b7e06f58518c
tree3b59f28528bfa9db3f38dd0a3f16e2e2ad70d162
parentc7d32225c3efe61c79470bc31bb369b33d3e3a88
init: ensure that read/write use the same random seed for verify

If we are verifying, then reads need to use the same blockrange
random trim as writes. Otherwise doing a deferred verify of
a write job may not yield the same block size ranges, causing
verify to fail.

Example of failed job:

$ cat job.fio
[global]
ioengine=sync
verify=md5
bsrange=1k-16k
rw=randwrite
randseed=50
size=10m
filename=foo

[write]
rw=randwrite
do_verify=0
write_iolog=wlog

[read]
rw=randread
do_verify=1
verify_fatal=1
verify_dump=1
write_iolog=rlog

$ fio --section=write job.fio
$ fio --section=read job.fio

Fixes: https://github.com/axboe/fio/issues/582
Signed-off-by: Jens Axboe <axboe@kernel.dk>
init.c