linux-raid.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/2] mdadm/clustermd_tests: add some APIs in func.sh to support running the tests without errors
@ 2024-07-09 12:04 Heming Zhao
  2024-07-09 12:04 ` [PATCH 2/2] mdadm/clustermd_tests: adjust test cases to support md module changes Heming Zhao
  2024-07-10 14:10 ` [PATCH 1/2] mdadm/clustermd_tests: add some APIs in func.sh to support running the tests without errors Mariusz Tkaczyk
  0 siblings, 2 replies; 4+ messages in thread
From: Heming Zhao @ 2024-07-09 12:04 UTC (permalink / raw)
  To: mariusz.tkaczyk, jes, linux-raid; +Cc: Heming Zhao, xni

clustermd_tests/func.sh lacks some APIs to run, this patch makes
clustermd_tests runnable from the test suite.

Signed-off-by: Heming Zhao <heming.zhao@suse.com>
---
 clustermd_tests/func.sh | 60 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 60 insertions(+)

diff --git a/clustermd_tests/func.sh b/clustermd_tests/func.sh
index 801d6043de61..e659c0ba4c74 100644
--- a/clustermd_tests/func.sh
+++ b/clustermd_tests/func.sh
@@ -1,5 +1,22 @@
 #!/bin/bash
 
+COLOR_FAIL='\033[0;31m' #RED
+COLOR_WARN='\033[1;33m' #YELLOW
+COLOR_SUCCESS='\033[0;32m' #GREEN
+COLOR_NONE='\033[0m'
+
+fail() {
+	printf "${COLOR_FAIL}$1${COLOR_NONE}"
+}
+
+warn() {
+	printf "${COLOR_WARN}$1${COLOR_NONE}"
+}
+
+succeed() {
+	printf "${COLOR_SUCCESS}$1${COLOR_NONE}"
+}
+
 check_ssh()
 {
 	NODE1="$(grep '^NODE1' $CLUSTER_CONF | cut -d'=' -f2)"
@@ -151,6 +168,33 @@ stop_md()
 	fi
 }
 
+record_system_speed_limit() {
+	system_speed_limit_max=`cat /proc/sys/dev/raid/speed_limit_max`
+	system_speed_limit_min=`cat /proc/sys/dev/raid/speed_limit_min`
+}
+
+# To avoid sync action finishes before checking it, it needs to limit
+# the sync speed
+control_system_speed_limit() {
+	echo $test_speed_limit_min > /proc/sys/dev/raid/speed_limit_min
+	echo $test_speed_limit_max > /proc/sys/dev/raid/speed_limit_max
+}
+
+restore_system_speed_limit() {
+	echo $system_speed_limit_min > /proc/sys/dev/raid/speed_limit_max
+	echo $system_speed_limit_max > /proc/sys/dev/raid/speed_limit_max
+}
+
+record_selinux() {
+	# empty
+	return 0
+}
+
+restore_selinux() {
+	# empty
+	return 0
+}
+
 # $1/optional, it shows why to save log
 save_log()
 {
@@ -240,6 +284,22 @@ check()
 					die "$ip: check '$2' failed."
 			done
 		;;
+		recovery-remote )
+			cnt=5
+			for ip in ${NODES[@]}
+			do
+				while ! ssh $ip "grep -sqE 'recovery|REMOTE' /proc/mdstat"
+				do
+					if [ "$cnt" -gt '0' ]
+					then
+						sleep 0.2
+						cnt=$[cnt-1]
+					else
+						die "$ip: no '$2' happening!"
+					fi
+				done
+			done
+		;;
 		PENDING | recovery | resync | reshape )
 			cnt=5
 			for ip in ${NODES[@]}
-- 
2.35.3


^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2024-07-11  0:14 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-07-09 12:04 [PATCH 1/2] mdadm/clustermd_tests: add some APIs in func.sh to support running the tests without errors Heming Zhao
2024-07-09 12:04 ` [PATCH 2/2] mdadm/clustermd_tests: adjust test cases to support md module changes Heming Zhao
2024-07-10 14:10 ` [PATCH 1/2] mdadm/clustermd_tests: add some APIs in func.sh to support running the tests without errors Mariusz Tkaczyk
2024-07-11  0:14   ` Heming Zhao

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).