X-Git-Url: https://git.kernel.dk/?p=fio.git;a=blobdiff_plain;f=t%2Fzbd%2Ftest-zbd-support;fp=t%2Fzbd%2Ftest-zbd-support;h=26aff3731b8c5933a3e7358f1342cd9a5942f3c1;hp=be1296151930f46ea9694cdb9ba580ef60ba335a;hb=9b6253bc6af3b38d4677f7470f42a1ff22492ef3;hpb=57f882190189ed72e0c28024ca940c6f16825091 diff --git a/t/zbd/test-zbd-support b/t/zbd/test-zbd-support index be129615..26aff373 100755 --- a/t/zbd/test-zbd-support +++ b/t/zbd/test-zbd-support @@ -1201,6 +1201,24 @@ test56() { >> "${logfile}.${test_number}" 2>&1 || return $? } +# Test that repeated async write job does not cause zone reset during writes +# in-flight, when the block size is not a divisor of the zone size. +test57() { + local bs off + + require_zbd || return $SKIP_TESTCASE + + bs=$((4096 * 7)) + off=$((first_sequential_zone_sector * 512)) + + run_fio --name=job --filename="${dev}" --rw=randwrite --bs="${bs}" \ + --offset="${off}" --size=$((4 * zone_size)) --iodepth=256 \ + "$(ioengine "libaio")" --time_based=1 --runtime=30s \ + --zonemode=zbd --direct=1 --zonesize="${zone_size}" \ + ${job_var_opts[@]} \ + >> "${logfile}.${test_number}" 2>&1 || return $? +} + SECONDS=0 tests=() dynamic_analyzer=()