[PATCH blktests 3/3] common, block/{015,020,021,027,040}, zbd/012: use _write_queue_sched()

Shin'ichiro Kawasaki <[email protected]>
Newsgroups org.kernel.vger.linux-block
Message-ID <[email protected]>
Use _write_queue_sched() to write values to the sysfs attirbute
queue/scheduler to handle -EBUSY.

Signed-off-by: Shin'ichiro Kawasaki <[email protected]>
---
 common/dm                  | 2 +-
 common/multipath-over-rdma | 2 +-
 common/rc                  | 5 +----
 tests/block/015            | 2 +-
 tests/block/020            | 2 +-
 tests/block/021            | 2 +-
 tests/block/027            | 2 +-
 tests/block/040            | 3 +--
 tests/zbd/012              | 2 +-
 9 files changed, 9 insertions(+), 13 deletions(-)

diff --git a/common/dm b/common/dm
index 14f4265..b0517d6 100644
--- a/common/dm
+++ b/common/dm
@@ -38,7 +38,7 @@ _dm_destination_dev_set_scheduler() {
 			SYSFS_QUEUE_SAVED["$path"]="$(sed \
 					-e 's/.*\[//' -e 's/\].*//' "${path}")"
 		fi
-		echo "${1}" > "${path}"
+		_write_queue_sched "${1}" "${path}"
 	done < <(dmsetup table "$(<"${TEST_DEV_SYSFS}/dm/name")" |
 			 sed -n  's/.* \([0-9]*:[0-9]*\).*/\1/p')
 }
diff --git a/common/multipath-over-rdma b/common/multipath-over-rdma
index 9b72d26..9a4595d 100644
--- a/common/multipath-over-rdma
+++ b/common/multipath-over-rdma
@@ -302,7 +302,7 @@ set_scheduler() {
 			bfq-mq)      s=bfq;;
 		esac
 	fi
-	if ! echo "$s" > "$p"; then
+	if ! _write_queue_sched "$s" "$p"; then
 		echo "Changing scheduler of $b from $(<"$p") into $s failed"
 		return 1
 	fi
diff --git a/common/rc b/common/rc
index de5eb6d..6500533 100644
--- a/common/rc
+++ b/common/rc
@@ -385,10 +385,7 @@ _test_dev_queue_set() {
 	      ${SYSFS_QUEUE_SAVED["$path"]-unset} == unset ]]; then
 		SYSFS_QUEUE_SAVED["$path"]="$(_test_dev_queue_get "$1")"
 	fi
-	if ! echo "$2" >"$path"; then
-		echo "echo $2 > $path failed"
-		return 1
-	fi
+	_write_queue_sched "$2" "$path"
 }
 
 _test_dev_set_scheduler() {
diff --git a/tests/block/015 b/tests/block/015
index afb4b82..31a8135 100755
--- a/tests/block/015
+++ b/tests/block/015
@@ -42,7 +42,7 @@ test() {
 
 	for sched in $(_io_schedulers "$faultb"); do
 		echo "Testing $sched" >> "$FULL"
-		echo "$sched" > /sys/block/"$faultb"/queue/scheduler
+		_write_queue_sched "$sched" /sys/block/"$faultb"/queue/scheduler
 		dd if=/dev/"$faultb" of=/dev/null bs=4K count=$((512 * 1024)) \
 			iflag=direct status=none
 	done
diff --git a/tests/block/020 b/tests/block/020
index 66f380e..22adf46 100755
--- a/tests/block/020
+++ b/tests/block/020
@@ -33,7 +33,7 @@ test() {
 	fi
 	for sched in $(_io_schedulers nullb1); do
 		echo "Testing $sched" >> "$FULL"
-		echo "$sched" > /sys/block/nullb1/queue/scheduler
+		_write_queue_sched "$sched" /sys/block/nullb1/queue/scheduler
 		_fio_perf --bs=4k --ioengine=libaio --iodepth=$iodepth \
 			--numjobs="$(nproc)" --rw=randread --name=async \
 			--filename=/dev/nullb1 --size=1g --direct=1 \
diff --git a/tests/block/021 b/tests/block/021
index 525d707..0d26e76 100755
--- a/tests/block/021
+++ b/tests/block/021
@@ -29,7 +29,7 @@ test() {
 
 	for sched in $(_io_schedulers nullb1); do
 		echo "Testing $sched" >> "$FULL"
-		echo "$sched" > /sys/block/nullb1/queue/scheduler
+		_write_queue_sched "$sched" /sys/block/nullb1/queue/scheduler
 		max_nr="$(cat /sys/block/nullb1/queue/nr_requests)"
 		for ((nr = 4; nr <= max_nr; nr++)); do
 			echo "$nr" > /sys/block/nullb1/queue/nr_requests
diff --git a/tests/block/027 b/tests/block/027
index f59dad2..a208d33 100755
--- a/tests/block/027
+++ b/tests/block/027
@@ -51,7 +51,7 @@ scsi_debug_stress_remove() {
 		# shellcheck disable=SC2207
 		scheds=($(sed 's/[][]//g' "$queue_path/scheduler"))
 		sched_idx=$((cnt % ${#scheds[@]}))
-		echo "${scheds[$sched_idx]}" > "$queue_path/scheduler"
+		_write_queue_sched "${scheds[$sched_idx]}" "$queue_path/scheduler"
 		echo "$cnt" > "$queue_path/../device/queue_depth"
 		((cnt++))
 	done
diff --git a/tests/block/040 b/tests/block/040
index cbf48d4..32e54f0 100755
--- a/tests/block/040
+++ b/tests/block/040
@@ -27,8 +27,7 @@ modify_io_sched() {
 	deadline=$(($(_uptime_s) + TIMEOUT))
 	while [ "$(_uptime_s)" -lt "$deadline" ]; do
 		for sched in $(_io_schedulers "$dev"); do
-			{ echo "$sched" > /sys/block/"$dev"/queue/scheduler ;} \
-				&> /dev/null
+			_write_queue_sched "$sched" /sys/block/"$dev"/queue/scheduler
 			sleep .5
 		done
 	done
diff --git a/tests/zbd/012 b/tests/zbd/012
index c2e47f3..5ec6fd2 100755
--- a/tests/zbd/012
+++ b/tests/zbd/012
@@ -21,7 +21,7 @@ toggle_iosched() {
 
 	while true; do
 		for iosched in none mq-deadline; do
-			echo "${iosched}" > "/sys/class/block/$(basename "$zdev")/queue/scheduler"
+			_write_queue_sched "${iosched}" "/sys/class/block/$(basename "$zdev")/queue/scheduler"
 			sleep .1
 		done
 	done
-- 
2.54.0
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.