From 83da8fbfa3cdcd16bef7276af6aec0eea4a4566b Mon Sep 17 00:00:00 2001 From: Justin Eno Date: Thu, 29 Jan 2015 14:28:38 -0800 Subject: [PATCH] Allow verify w/norandommap and bsrange Only intact blocks are verified; partially-overwritten blocks are ignored Signed-off-by: Justin Eno Signed-off-by: Jens Axboe --- HOWTO | 8 ++++---- init.c | 3 +-- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/HOWTO b/HOWTO index 8da5527a..0f7909da 100644 --- a/HOWTO +++ b/HOWTO @@ -919,10 +919,10 @@ norandommap Normally fio will cover every block of the file when doing random IO. If this option is given, fio will just get a new random offset without looking at past io history. This means that some blocks may not be read or written, and that - some blocks may be read/written more than once. This option - is mutually exclusive with verify= if and only if multiple - blocksizes (via bsrange=) are used, since fio only tracks - complete rewrites of blocks. + some blocks may be read/written more than once. If this option + is used with verify= and multiple blocksizes (via bsrange=), + only intact blocks are verified, i.e., partially-overwritten + blocks are ignored. softrandommap=bool See norandommap. If fio runs with the random block map enabled and it fails to allocate the map, if this option is diff --git a/init.c b/init.c index bb53a1e2..c210ad25 100644 --- a/init.c +++ b/init.c @@ -596,8 +596,7 @@ static int fixup_options(struct thread_data *td) if (o->norandommap && o->verify != VERIFY_NONE && !fixed_block_size(o)) { log_err("fio: norandommap given for variable block sizes, " - "verify disabled\n"); - o->verify = VERIFY_NONE; + "verify limited\n"); ret = warnings_fatal; } if (o->bs_unaligned && (o->odirect || td->io_ops->flags & FIO_RAWIO)) -- 2.25.1