From: Naohiro Aota Date: Mon, 16 Aug 2021 11:35:08 +0000 (+0900) Subject: common: add zoned block device checks X-Git-Tag: v2022.05.01~278 X-Git-Url: http://git.apps.os.sepia.ceph.com/?a=commitdiff_plain;h=952310a57d9323ae0bb174b50be93107a8895e0c;p=xfstests-dev.git common: add zoned block device checks dm-error and dm-snapshot does not have DM_TARGET_ZONED_HM nor DM_TARGET_MIXED_ZONED_MODEL feature and does not implement .report_zones(). So, it cannot pass the zone information from the down layer (zoned device) to the upper layer. Loop device also cannot pass the zone information. This patch requires non-zoned block device for the tests using these ones. Signed-off-by: Naohiro Aota Reviewed-by: Darrick J. Wong Signed-off-by: Eryu Guan --- diff --git a/common/rc b/common/rc index 84757fc1..e0b6d508 100644 --- a/common/rc +++ b/common/rc @@ -1837,6 +1837,9 @@ _require_loop() else _notrun "This test requires loopback device support" fi + + # loop device does not handle zone information + _require_non_zoned_device ${TEST_DEV} } # this test requires kernel support for a secondary filesystem @@ -1966,6 +1969,16 @@ _require_dm_target() if [ $? -ne 0 ]; then _notrun "This test requires dm $target support" fi + + # dm-error cannot handle the zone information + # + # dm-snapshot and dm-thin-pool cannot ensure sequential writes on + # the backing device + case $target in + error|snapshot|thin-pool) + _require_non_zoned_device ${SCRATCH_DEV} + ;; + esac } _zone_type()