Re: FIO for random seed usage -How to verify the data validation

Vincent Fu <[email protected]> Wed, 23 Jul 2025 13:22:53 -0400
Newsgroups org.kernel.vger.fio
Message-ID <[email protected]>
On 7/17/25 10:39 AM, Yan, Jane wrote:
> 
> 
> HI, FIO experts, how are you !
> 
> Currently I am using the FIO tool for some testing ,I got a problem which may need your help , Thanks a lot.
> Seems if we used the randseed ,we could not do data validation correctly.
> 
> 
> I want to use the randseed to generate totally same data pattern to do deduplication seems we cannot do data verification if we used the seed ?
> Can you please give me an example how to validate the data with randseed. Thanks .
> My step steps:
> 
> 1. Write configure file:
> 
> [write_test]
> filename=/home/cyc/tmp/seed/testa.txt
> size=8k
> rw=write
> bs=8k
> numjobs=1
> iodepth=1
> direct=1
> sync=1
> randseed=383733983
> buffer_compress_percentage=50
> randrepeat=1
> 
> 2. Validation conf file:
> 
> [write_test]
> filename=/home/cyc/tmp/seed/testa.txt
> size=8k
> rw=read
> bs=8k
> numjobs=1
> iodepth=1
> direct=1
> sync=1
> randseed=383733983
> buffer_compress_percentage=50
> randrepeat=1
> do_verify=1
> 
> 3. Modify the file testa.txt and then do reun the verify file , which did not report errors this is not expected as I change the testa.txt file ,thanks
> 
> Thanks a lot.
> 
> 
> 
> Internal Use - Confidential
> 

You need to tell fio what type of checksum to use for validation. To 
both of your jobs add an option such as

verify=crc32c

Then fio will calculate a crc32c checksum and place it in the verify 
header associated with each IO. When fio reads the data back it will 
compare the checksum calculated from the data with the checksum in the 
header. If there is a mismatch fio will report an error.

See also this overview of fio's verify feature:

https://github.com/vincentkfu/fio-blog/wiki/Verify-overview

Vincent