On 7/19/23 06:57, Shin'ichiro Kawasaki wrote:
Current fio implementation for zonemode=zbd has two problems for zoned block devices with max_active_zones. The first problem is max_active_zones limit error. When some of write target zones are in closed condition at fio start, writes to other zones causes the max_active_zones limit error. The second problem is a confusing error message. When number of active zones goes beyond the max_active_zones limit, fio prints unrelated error message and confuses users [1]. This series addresses the two problems. The first patch is a preparation to get the max_active_zones value from devices. The next two patches fix the two problems. The forth patch modifies man document of max_open_zones option to match with the fixes. Other nine patches improve test scripts for the fixes. Add test cases and test conditions to confirm the fixes. Also fix test script bugs found during this work. [1] https://lore.kernel.org/fio/ZHShQdVGkyRfd6v0@x1-carbon/T/#m4ec7ff1575981e92517c0ea7f699e7df9aba087c Changes from v1: * Reflected comments on the list and added Reviewed-by tags Dmitry Fomichev (2): t/zbd: fix null_blk configuration in run-tests-against-nullb t/zbd: add max_active configs to run-tests-against-nullb Shin'ichiro Kawasaki (11): zbd: get max_active_zones limit value from zoned devices zbd: write to closed zones on the devices with max_active_zones limit zbd: print max_active_zones limit error message docs: modify max_open_zones option description t/zbd: add close_zone helper function t/zbd: add max_active_zone variable t/zbd: add test case to check zones in closed condition t/zbd: add test case to check max_active_zones limit error message t/zbd: get max_open_zones from sysfs t/zbd: fix fio failure check and SG node failure in test case 31 t/zbd: add missing prep_write for test cases with write workloads HOWTO.rst | 44 +++++--- fio.1 | 36 ++++-- io_u.c | 2 + ioengines.h | 4 +- oslib/blkzoned.h | 9 ++ oslib/linux-blkzoned.c | 23 ++++ t/zbd/functions | 33 +++++- t/zbd/run-tests-against-nullb | 203 ++++++++++++++++++++++++++++++++-- t/zbd/test-zbd-support | 91 ++++++++++++++- zbd.c | 47 +++++++- zbd.h | 5 + 11 files changed, 457 insertions(+), 40 deletions(-)
Applied. Thanks. Vincent