New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Verification header not laid out as often as --verify_interval requires #522
Comments
this is a better repro:
|
@axboe: I think I have a fix for this. However I'm not being able to create a branch. Could it be I'm missing permissions? |
Just fork the repo and commit the fix there, that should work fine. Sorry I haven’t had time to look into this, great if you have a fix.
… On Feb 8, 2018, at 6:16 PM, yurzo ***@***.***> wrote:
@axboe: I think I have a fix for this. However I'm not being able to create a branch. Could it be I'm missing permission?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.
|
The operands seems to have been inverted which in turn created the situation whereby the interval gets always changed to match the min_bs
@axboe: I pushed the fix. Per my shallow code and test, this solves the problem I had with verifying checksum more frequently that the write bs.
I think it'll also fix #163 but haven't checked. |
@yurzo Just to follow up, your patch won't fix #163 as that issue isn't related to an incorrect Re
being broken - could you give a more complete example? When I ran:
That seemed to work fine for me. |
@yurzo OK I've just been doing some testing of the patch and won't this patch break the case where verification is requested but
work for you? |
@sitsofe: Thanks for the pointers on commit messages and Before I get down to try and fix it I have a couple questions:
|
You can't assume that a zero value for an option means it hasn't been set. You can, however, use |
Got it! |
The operands seems to have been inverted which in turn created the situation whereby the interval was always changed to match the min_bs Fixes: axboe#522 Signed-off-by: Damian Yurzola <damian@yurzola.net><damian.yurzola@purestorage.com>
I've adjusted the commit messages per your suggestions, addressed the syntax issues and the division by 0. It all looks good for verification with headers. This test script fails for case 3 and 4. Because the pattern is laid out in 8K granularity (max_bs rather than verify_interval). I do not understand why case 5 does not fail (is it verifying at all?)
|
Cases 3 and case 4 should fail (and they do) because when you use "%o" the pattern put down reflects the starting offset of the entire block (regardless of verify_interval) and if the block size you are verifying with is different to the one that the write portion put down the blocks will no longer match up. Case 5 you've changed the case of the variable name from |
@sitsofe: Roger @ $verify.
Should this not be added somewhere in the HOWTO. The HOWTO lead me to believe that verification by headers vs verification by parameter were equal citizens, when in reality they are not. |
The operands seems to have been inverted which in turn created the situation whereby the interval was always changed to match the min_bs Fixes: axboe#522 Signed-off-by: Damian Yurzola <damian@yurzola.net>
The operands seems to have been inverted which in turn created the situation whereby the interval was always changed to match the min_bs Fixes: axboe#522 Signed-off-by: Damian Yurzola <damian@yurzola.net>
This fix should have been in by fio version 3.1, correct? Because I'm seeing the same issue where only 8k block aligned have fio headers written to them, despite specifying the verify_interval to 512. Running the same snippet of code from the original post produces this:
fio --rw=write --size=32K --io_size=32K --direct=1 --name=carlos --bs=8K --filename=test.bin --verify_interval=512 --verify=crc32c |
only the 8K aligned seems to have the header
I think this is also related to #163
The text was updated successfully, but these errors were encountered: