linux-kselftest.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH -next v5 0/4] Optimize and bugfix for memory-hotplug
@ 2022-09-30  6:35 Zhao Gongyi
  2022-09-30  6:35 ` [PATCH -next v5 1/4] selftests/memory-hotplug: Add checking after online or offline Zhao Gongyi
                   ` (3 more replies)
  0 siblings, 4 replies; 8+ messages in thread
From: Zhao Gongyi @ 2022-09-30  6:35 UTC (permalink / raw)
  To: linux-doc, linux-kernel, linux-mm, linux-kselftest
  Cc: akinobu.mita, corbet, david, osalvador, shuah, zhaogongyi

1. Add checking after online or offline
2. Restore memory before exit
3. Adjust log info for maintainability
4. Correct test's name

Changes in v5:
  - Adjust log info for maintainability

Changes in v4:
  - Remove redundant log information

Changes in v3:
  - Remove 2 obselute patches

Zhao Gongyi (4):
  selftests/memory-hotplug: Add checking after online or offline
  selftests/memory-hotplug: Restore memory before exit
  selftests/memory-hotplug: Adjust log info for maintainability
  docs: notifier-error-inject: Correct test's name

 .../fault-injection/notifier-error-inject.rst |  4 +--
 .../memory-hotplug/mem-on-off-test.sh         | 34 +++++++++++++++----
 2 files changed, 29 insertions(+), 9 deletions(-)

--
2.17.1


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

* [PATCH -next v5 1/4] selftests/memory-hotplug: Add checking after online or offline
  2022-09-30  6:35 [PATCH -next v5 0/4] Optimize and bugfix for memory-hotplug Zhao Gongyi
@ 2022-09-30  6:35 ` Zhao Gongyi
  2022-09-30  8:32   ` David Hildenbrand
  2022-09-30  6:35 ` [PATCH -next v5 2/4] selftests/memory-hotplug: Restore memory before exit Zhao Gongyi
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 8+ messages in thread
From: Zhao Gongyi @ 2022-09-30  6:35 UTC (permalink / raw)
  To: linux-doc, linux-kernel, linux-mm, linux-kselftest
  Cc: akinobu.mita, corbet, david, osalvador, shuah, zhaogongyi

Add checking for online_memory_expect_success()/
offline_memory_expect_success()/offline_memory_expect_fail(), or
the test would exit 0 although the functions return 1.

Signed-off-by: Zhao Gongyi <zhaogongyi@huawei.com>
---
 .../selftests/memory-hotplug/mem-on-off-test.sh      | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/tools/testing/selftests/memory-hotplug/mem-on-off-test.sh b/tools/testing/selftests/memory-hotplug/mem-on-off-test.sh
index 46a97f318f58..1d87611a7d52 100755
--- a/tools/testing/selftests/memory-hotplug/mem-on-off-test.sh
+++ b/tools/testing/selftests/memory-hotplug/mem-on-off-test.sh
@@ -266,7 +266,9 @@ done
 #
 echo $error > $NOTIFIER_ERR_INJECT_DIR/actions/MEM_GOING_ONLINE/error
 for memory in `hotpluggable_offline_memory`; do
-	online_memory_expect_fail $memory
+	if ! online_memory_expect_fail $memory; then
+		retval=1
+	fi
 done

 #
@@ -274,7 +276,9 @@ done
 #
 echo 0 > $NOTIFIER_ERR_INJECT_DIR/actions/MEM_GOING_ONLINE/error
 for memory in `hotpluggable_offline_memory`; do
-	online_memory_expect_success $memory
+	if ! online_memory_expect_success $memory; then
+		retval=1
+	fi
 done

 #
@@ -283,7 +287,9 @@ done
 echo $error > $NOTIFIER_ERR_INJECT_DIR/actions/MEM_GOING_OFFLINE/error
 for memory in `hotpluggable_online_memory`; do
 	if [ $((RANDOM % 100)) -lt $ratio ]; then
-		offline_memory_expect_fail $memory
+		if ! offline_memory_expect_fail $memory; then
+			retval=1
+		fi
 	fi
 done

--
2.17.1


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

* [PATCH -next v5 2/4] selftests/memory-hotplug: Restore memory before exit
  2022-09-30  6:35 [PATCH -next v5 0/4] Optimize and bugfix for memory-hotplug Zhao Gongyi
  2022-09-30  6:35 ` [PATCH -next v5 1/4] selftests/memory-hotplug: Add checking after online or offline Zhao Gongyi
@ 2022-09-30  6:35 ` Zhao Gongyi
  2022-09-30  8:33   ` David Hildenbrand
  2022-09-30  6:35 ` [PATCH -next v5 3/4] selftests/memory-hotplug: Adjust log info for maintainability Zhao Gongyi
  2022-09-30  6:35 ` [PATCH -next v5 4/4] docs: notifier-error-inject: Correct test's name Zhao Gongyi
  3 siblings, 1 reply; 8+ messages in thread
From: Zhao Gongyi @ 2022-09-30  6:35 UTC (permalink / raw)
  To: linux-doc, linux-kernel, linux-mm, linux-kselftest
  Cc: akinobu.mita, corbet, david, osalvador, shuah, zhaogongyi

Some momory will be left in offline state when calling
offline_memory_expect_fail() failed. Restore it before exit.

Signed-off-by: Zhao Gongyi <zhaogongyi@huawei.com>
---
 .../memory-hotplug/mem-on-off-test.sh         | 21 ++++++++++++++-----
 1 file changed, 16 insertions(+), 5 deletions(-)

diff --git a/tools/testing/selftests/memory-hotplug/mem-on-off-test.sh b/tools/testing/selftests/memory-hotplug/mem-on-off-test.sh
index 1d87611a7d52..91a7457616bb 100755
--- a/tools/testing/selftests/memory-hotplug/mem-on-off-test.sh
+++ b/tools/testing/selftests/memory-hotplug/mem-on-off-test.sh
@@ -134,6 +134,16 @@ offline_memory_expect_fail()
 	return 0
 }

+online_all_offline_memory()
+{
+	for memory in `hotpluggable_offline_memory`; do
+		if ! online_memory_expect_success $memory; then
+			echo "$FUNCNAME $memory: unexpected fail" >&2
+			retval=1
+		fi
+	done
+}
+
 error=-12
 priority=0
 # Run with default of ratio=2 for Kselftest run
@@ -275,11 +285,7 @@ done
 # Online all hot-pluggable memory
 #
 echo 0 > $NOTIFIER_ERR_INJECT_DIR/actions/MEM_GOING_ONLINE/error
-for memory in `hotpluggable_offline_memory`; do
-	if ! online_memory_expect_success $memory; then
-		retval=1
-	fi
-done
+online_all_offline_memory

 #
 # Test memory hot-remove error handling (online => offline)
@@ -296,4 +302,9 @@ done
 echo 0 > $NOTIFIER_ERR_INJECT_DIR/actions/MEM_GOING_OFFLINE/error
 /sbin/modprobe -q -r memory-notifier-error-inject

+#
+# Restore memory before exit
+#
+online_all_offline_memory
+
 exit $retval
--
2.17.1


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

* [PATCH -next v5 3/4] selftests/memory-hotplug: Adjust log info for maintainability
  2022-09-30  6:35 [PATCH -next v5 0/4] Optimize and bugfix for memory-hotplug Zhao Gongyi
  2022-09-30  6:35 ` [PATCH -next v5 1/4] selftests/memory-hotplug: Add checking after online or offline Zhao Gongyi
  2022-09-30  6:35 ` [PATCH -next v5 2/4] selftests/memory-hotplug: Restore memory before exit Zhao Gongyi
@ 2022-09-30  6:35 ` Zhao Gongyi
  2022-09-30  8:35   ` David Hildenbrand
  2022-09-30  6:35 ` [PATCH -next v5 4/4] docs: notifier-error-inject: Correct test's name Zhao Gongyi
  3 siblings, 1 reply; 8+ messages in thread
From: Zhao Gongyi @ 2022-09-30  6:35 UTC (permalink / raw)
  To: linux-doc, linux-kernel, linux-mm, linux-kselftest
  Cc: akinobu.mita, corbet, david, osalvador, shuah, zhaogongyi

Redirect misleading error message to /dev/null for
offline_memory_expect_success(), And, add an output
for online->offline test.

Signed-off-by: Zhao Gongyi <zhaogongyi@huawei.com>
---
 tools/testing/selftests/memory-hotplug/mem-on-off-test.sh | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/tools/testing/selftests/memory-hotplug/mem-on-off-test.sh b/tools/testing/selftests/memory-hotplug/mem-on-off-test.sh
index 91a7457616bb..74ee5067a8ce 100755
--- a/tools/testing/selftests/memory-hotplug/mem-on-off-test.sh
+++ b/tools/testing/selftests/memory-hotplug/mem-on-off-test.sh
@@ -207,8 +207,11 @@ echo -e "\t trying to offline $target out of $hotpluggable_num memory block(s):"
 for memory in `hotpluggable_online_memory`; do
 	if [ "$target" -gt 0 ]; then
 		echo "online->offline memory$memory"
-		if offline_memory_expect_success $memory; then
+		if offline_memory_expect_success $memory &>/dev/null; then
 			target=$(($target - 1))
+			echo "-> Success"
+		else
+			echo "-> Failure"
 		fi
 	fi
 done
@@ -267,7 +270,7 @@ prerequisite_extra
 echo 0 > $NOTIFIER_ERR_INJECT_DIR/actions/MEM_GOING_OFFLINE/error
 for memory in `hotpluggable_online_memory`; do
 	if [ $((RANDOM % 100)) -lt $ratio ]; then
-		offline_memory_expect_success $memory
+		offline_memory_expect_success $memory &>/dev/null
 	fi
 done

--
2.17.1


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

* [PATCH -next v5 4/4] docs: notifier-error-inject: Correct test's name
  2022-09-30  6:35 [PATCH -next v5 0/4] Optimize and bugfix for memory-hotplug Zhao Gongyi
                   ` (2 preceding siblings ...)
  2022-09-30  6:35 ` [PATCH -next v5 3/4] selftests/memory-hotplug: Adjust log info for maintainability Zhao Gongyi
@ 2022-09-30  6:35 ` Zhao Gongyi
  3 siblings, 0 replies; 8+ messages in thread
From: Zhao Gongyi @ 2022-09-30  6:35 UTC (permalink / raw)
  To: linux-doc, linux-kernel, linux-mm, linux-kselftest
  Cc: akinobu.mita, corbet, david, osalvador, shuah, zhaogongyi

Correct test's name for mem-on-off-test.sh/cpu-on-off-test.sh.

Signed-off-by: Zhao Gongyi <zhaogongyi@huawei.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
---
 Documentation/fault-injection/notifier-error-inject.rst | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/Documentation/fault-injection/notifier-error-inject.rst b/Documentation/fault-injection/notifier-error-inject.rst
index 1668b6e48d3a..fdf2dc433ead 100644
--- a/Documentation/fault-injection/notifier-error-inject.rst
+++ b/Documentation/fault-injection/notifier-error-inject.rst
@@ -91,8 +91,8 @@ For more usage examples
 There are tools/testing/selftests using the notifier error injection features
 for CPU and memory notifiers.

- * tools/testing/selftests/cpu-hotplug/on-off-test.sh
- * tools/testing/selftests/memory-hotplug/on-off-test.sh
+ * tools/testing/selftests/cpu-hotplug/cpu-on-off-test.sh
+ * tools/testing/selftests/memory-hotplug/mem-on-off-test.sh

 These scripts first do simple online and offline tests and then do fault
 injection tests if notifier error injection module is available.
--
2.17.1


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

* Re: [PATCH -next v5 1/4] selftests/memory-hotplug: Add checking after online or offline
  2022-09-30  6:35 ` [PATCH -next v5 1/4] selftests/memory-hotplug: Add checking after online or offline Zhao Gongyi
@ 2022-09-30  8:32   ` David Hildenbrand
  0 siblings, 0 replies; 8+ messages in thread
From: David Hildenbrand @ 2022-09-30  8:32 UTC (permalink / raw)
  To: Zhao Gongyi, linux-doc, linux-kernel, linux-mm, linux-kselftest
  Cc: akinobu.mita, corbet, osalvador, shuah

On 30.09.22 08:35, Zhao Gongyi wrote:
> Add checking for online_memory_expect_success()/
> offline_memory_expect_success()/offline_memory_expect_fail(), or
> the test would exit 0 although the functions return 1.
> 
> Signed-off-by: Zhao Gongyi <zhaogongyi@huawei.com>

Reviewed-by: David Hildenbrand <david@redhat.com>

-- 
Thanks,

David / dhildenb


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

* Re: [PATCH -next v5 2/4] selftests/memory-hotplug: Restore memory before exit
  2022-09-30  6:35 ` [PATCH -next v5 2/4] selftests/memory-hotplug: Restore memory before exit Zhao Gongyi
@ 2022-09-30  8:33   ` David Hildenbrand
  0 siblings, 0 replies; 8+ messages in thread
From: David Hildenbrand @ 2022-09-30  8:33 UTC (permalink / raw)
  To: Zhao Gongyi, linux-doc, linux-kernel, linux-mm, linux-kselftest
  Cc: akinobu.mita, corbet, osalvador, shuah

On 30.09.22 08:35, Zhao Gongyi wrote:
> Some momory will be left in offline state when calling
> offline_memory_expect_fail() failed. Restore it before exit.
> 
> Signed-off-by: Zhao Gongyi <zhaogongyi@huawei.com>
> ---
>   .../memory-hotplug/mem-on-off-test.sh         | 21 ++++++++++++++-----
>   1 file changed, 16 insertions(+), 5 deletions(-)
> 
> diff --git a/tools/testing/selftests/memory-hotplug/mem-on-off-test.sh b/tools/testing/selftests/memory-hotplug/mem-on-off-test.sh
> index 1d87611a7d52..91a7457616bb 100755
> --- a/tools/testing/selftests/memory-hotplug/mem-on-off-test.sh
> +++ b/tools/testing/selftests/memory-hotplug/mem-on-off-test.sh
> @@ -134,6 +134,16 @@ offline_memory_expect_fail()
>   	return 0
>   }
> 
> +online_all_offline_memory()
> +{
> +	for memory in `hotpluggable_offline_memory`; do
> +		if ! online_memory_expect_success $memory; then
> +			echo "$FUNCNAME $memory: unexpected fail" >&2

Do we need that output?


-- 
Thanks,

David / dhildenb


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

* Re: [PATCH -next v5 3/4] selftests/memory-hotplug: Adjust log info for maintainability
  2022-09-30  6:35 ` [PATCH -next v5 3/4] selftests/memory-hotplug: Adjust log info for maintainability Zhao Gongyi
@ 2022-09-30  8:35   ` David Hildenbrand
  0 siblings, 0 replies; 8+ messages in thread
From: David Hildenbrand @ 2022-09-30  8:35 UTC (permalink / raw)
  To: Zhao Gongyi, linux-doc, linux-kernel, linux-mm, linux-kselftest
  Cc: akinobu.mita, corbet, osalvador, shuah

On 30.09.22 08:35, Zhao Gongyi wrote:
> Redirect misleading error message to /dev/null for
> offline_memory_expect_success(), And, add an output
> for online->offline test.
> 
> Signed-off-by: Zhao Gongyi <zhaogongyi@huawei.com>
> ---
>   tools/testing/selftests/memory-hotplug/mem-on-off-test.sh | 7 +++++--
>   1 file changed, 5 insertions(+), 2 deletions(-)
> 
> diff --git a/tools/testing/selftests/memory-hotplug/mem-on-off-test.sh b/tools/testing/selftests/memory-hotplug/mem-on-off-test.sh
> index 91a7457616bb..74ee5067a8ce 100755
> --- a/tools/testing/selftests/memory-hotplug/mem-on-off-test.sh
> +++ b/tools/testing/selftests/memory-hotplug/mem-on-off-test.sh
> @@ -207,8 +207,11 @@ echo -e "\t trying to offline $target out of $hotpluggable_num memory block(s):"
>   for memory in `hotpluggable_online_memory`; do
>   	if [ "$target" -gt 0 ]; then
>   		echo "online->offline memory$memory"
> -		if offline_memory_expect_success $memory; then
> +		if offline_memory_expect_success $memory &>/dev/null; then
>   			target=$(($target - 1))
> +			echo "-> Success"
> +		else
> +			echo "-> Failure"
>   		fi
>   	fi
>   done
> @@ -267,7 +270,7 @@ prerequisite_extra
>   echo 0 > $NOTIFIER_ERR_INJECT_DIR/actions/MEM_GOING_OFFLINE/error
>   for memory in `hotpluggable_online_memory`; do
>   	if [ $((RANDOM % 100)) -lt $ratio ]; then
> -		offline_memory_expect_success $memory
> +		offline_memory_expect_success $memory &>/dev/null

Acked-by: David Hildenbrand <david@redhat.com>

-- 
Thanks,

David / dhildenb


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

end of thread, other threads:[~2022-09-30  8:35 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-09-30  6:35 [PATCH -next v5 0/4] Optimize and bugfix for memory-hotplug Zhao Gongyi
2022-09-30  6:35 ` [PATCH -next v5 1/4] selftests/memory-hotplug: Add checking after online or offline Zhao Gongyi
2022-09-30  8:32   ` David Hildenbrand
2022-09-30  6:35 ` [PATCH -next v5 2/4] selftests/memory-hotplug: Restore memory before exit Zhao Gongyi
2022-09-30  8:33   ` David Hildenbrand
2022-09-30  6:35 ` [PATCH -next v5 3/4] selftests/memory-hotplug: Adjust log info for maintainability Zhao Gongyi
2022-09-30  8:35   ` David Hildenbrand
2022-09-30  6:35 ` [PATCH -next v5 4/4] docs: notifier-error-inject: Correct test's name Zhao Gongyi

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).