[PATCH blktests] zbd/007: Add --force option to blkzone reset

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The test case zbd/007 utilizes blkzone command from util-linux project
to reset zones of test target devices. Recently, blkzone was modified to
report EBUSY error when it was called to change zone status of devices
used by the system. This avoids unintended zone status change by mistake
and good for most of use cases.

However this change triggered failure of the test case zbd/007 with the
EBUSY error. The test case executes blkzone to reset zones of block devices
which the system maps to container devices such as dm-linear.

To avoid this failure, modify zbd/007 to check if blkzone supports --force
option. And if it is supported, add it to blkzone command line. This option
was introduced to blkzone to allow zone status change of devices even when
the system use them.

Signed-off-by: Shin'ichiro Kawasaki <shinichiro.kawasaki@xxxxxxx>
---
 tests/zbd/007 | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/tests/zbd/007 b/tests/zbd/007
index 2376b3a..9d7ca67 100755
--- a/tests/zbd/007
+++ b/tests/zbd/007
@@ -68,7 +68,7 @@ test_device() {
 
 	# Reset and move write pointers of the container device
 	for ((i=0; i < ${#test_z[@]}; i++)); do
-		local -a arr
+		local -a arr opts
 
 		read -r -a arr < <(_get_dev_container_and_sector \
 					   "${test_z_start[i]}")
@@ -77,8 +77,11 @@ test_device() {
 
 		echo "${container_dev}" "${container_start}" >> "$FULL"
 
-		if ! blkzone reset -o "${container_start}" -c 1 \
-		     "${container_dev}"; then
+		opts=(-o "${container_start}" -c 1)
+		if blkzone -h | grep -q -e --force; then
+			opts+=(--force)
+		fi
+		if ! blkzone reset "${opts[@]}" "${container_dev}"; then
 			echo "Reset zone failed"
 			return 1
 		fi
-- 
2.25.4




[Index of Archives]     [Linux RAID]     [Linux SCSI]     [Linux ATA RAID]     [IDE]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Device Mapper]

  Powered by Linux