path: root/configure
diff options
authorShin'ichiro Kawasaki <>2021-06-04 20:32:52 +0900
committerJens Axboe <>2021-06-08 15:15:58 -0600
commit40d0b84220f7c0ff9c3874656db7f0f8cb6a85e6 (patch)
tree7dbd5a89ec1a434ea7afe48328725cd5e110e6ed /configure
parent351fe91089c3babb06ae421a1abce3632f42b672 (diff)
t/zbd: Fix write target zones counting in test case #31
The test case #31 in t/zbd/test-zbd-support writes 128KB data to sequential write required zones as the preparation for the following random read test. The data write leaves the target zones in open status. The test case refers the variable 'nz', which has max_open_zones value, to decide how many zones to write the data. However, the end condition of the write target zone loop has a bug. The disk end offset is used as the loop end condition, which does not match the last target zone when number of sequential write required zones divided by nz has remainder. This results in write to more zones than nz=max_open_zones limit and the test case failure. To fix the bug and to simplify the script, avoid the loop and utilize zonemode strided to achieve the same data write pattern. Also specify size and io_size using nz to reliably count the write target zones. Even with the fix above, still the number of open zones may exceed max_open_zones since other test cases executed before the test case 31 may leave open zones on the test target device. To avoid this failure, reset all zones before the data write. The failures were observed with libzbc I/O engine after the commit e8267436fd7a ("engines/libzbc: add support for the get_max_open_zones io op"), which changed the max_open_zones value fio refers. Signed-off-by: Shin'ichiro Kawasaki <> Reviewed-by: Damien Le Moal <> Reviewed-by: Niklas Cassel <> Signed-off-by: Jens Axboe <>
Diffstat (limited to 'configure')
0 files changed, 0 insertions, 0 deletions