linux-kselftest.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Re: [PATCH -next v4 1/3] selftests/memory-hotplug: Add checking after online or offline
@ 2022-09-29  7:39 zhaogongyi
  2022-09-29  9:04 ` David Hildenbrand
  0 siblings, 1 reply; 7+ messages in thread
From: zhaogongyi @ 2022-09-29  7:39 UTC (permalink / raw)
  To: David Hildenbrand, linux-doc, linux-kernel, linux-mm, linux-kselftest
  Cc: akinobu.mita, corbet, osalvador, shuah

Hi,

We can not get the EBUSY from " echo 0 > /sys/devices/system/memory/memoryxxx/online", maybe, redirect the error ouput to /dev/null is suitable when calling offline_memory_expect_success():

# sh mem-on-off-test.sh -a
mem-on-off-test.sh: illegal option -- a
Test scope: 2% hotplug memory
         online all hot-pluggable memory in offline state:
                 SKIPPED - no hot-pluggable memory in offline state
         offline 2% hot-pluggable memory in online state
         trying to offline 4 out of 192 memory block(s):
online->offline memory0
online->offline memory10
online->offline memory100
online->offline memory101
online->offline memory102
online->offline memory103
online->offline memory104
online->offline memory105
online->offline memory106
online->offline memory107
online->offline memory108
online->offline memory109
online->offline memory11
online->offline memory110
online->offline memory111
online->offline memory112
online->offline memory113
online->offline memory114
online->offline memory115
online->offline memory116
online->offline memory117
online->offline memory118
online->offline memory119
online->offline memory12
online->offline memory120
online->offline memory121
online->offline memory122
online->offline memory123
online->offline memory124
         online all hot-pluggable memory in offline state:
offline->online memory121
offline->online memory122
offline->online memory123
offline->online memory124
         Test with memory notifier error injection
# echo $?
0

Thanks!
Gongyi


> 
> 
> >> Reviewed-by: David Hildenbrand <david@redhat.com>
> >>
> >>
> >> I am questioning the stability of the offlining test, though.
> >> Offlining a random memory block can fail easily, because
> >> "->removable" is not
> >> expressive:
> >>
> >> # tools/testing/selftests/memory-hotplug/mem-on-off-test.sh
> >> Test scope: 2% hotplug memory
> >>            online all hot-pluggable memory in offline state:
> >>                    SKIPPED - no hot-pluggable memory in offline state
> >>            offline 2% hot-pluggable memory in online state
> >>            trying to offline 2 out of 96 memory block(s):
> >> online->offline memory0
> >> tools/testing/selftests/memory-hotplug/mem-on-off-test.sh: line 78: echo:
> >> write error: Invalid argument offline_memory_expect_success 0:
> >> unexpected fail
> >> online->offline memory10
> >> online->offline memory11
> >>
> >>
> >> I guess this test will almost always fail nowadays.
> >
> > Offline some memory node maybe failed as expected, but the error message
> is a bit annoying.
> 
> Ah, I see it now. We try offlining two and fail offlining the first one.
> Can we silence that warning in that case somehow?
> 
> --
> Thanks,
> 
> David / dhildenb


^ permalink raw reply	[flat|nested] 7+ messages in thread
* Re: [PATCH -next v4 1/3] selftests/memory-hotplug: Add checking after online or offline
@ 2022-09-29 12:08 zhaogongyi
  0 siblings, 0 replies; 7+ messages in thread
From: zhaogongyi @ 2022-09-29 12:08 UTC (permalink / raw)
  To: David Hildenbrand, linux-doc, linux-kernel, linux-mm, linux-kselftest
  Cc: akinobu.mita, corbet, osalvador, shuah

Hi!

> 
> On 29.09.22 09:39, zhaogongyi wrote:
> > Hi,
> >
> > We can not get the EBUSY from " echo 0 >
> /sys/devices/system/memory/memoryxxx/online", maybe, redirect the error
> ouput to /dev/null is suitable when calling offline_memory_expect_success():
> >
> > # sh mem-on-off-test.sh -a
> > mem-on-off-test.sh: illegal option -- a Test scope: 2% hotplug memory
> >           online all hot-pluggable memory in offline state:
> >                   SKIPPED - no hot-pluggable memory in offline state
> >           offline 2% hot-pluggable memory in online state
> >           trying to offline 4 out of 192 memory block(s):
> > online->offline memory0
> > online->offline memory10
> > online->offline memory100
> > online->offline memory101
> > online->offline memory102
> > online->offline memory103
> > online->offline memory104
> > online->offline memory105
> > online->offline memory106
> > online->offline memory107
> > online->offline memory108
> > online->offline memory109
> > online->offline memory11
> > online->offline memory110
> > online->offline memory111
> > online->offline memory112
> > online->offline memory113
> > online->offline memory114
> > online->offline memory115
> > online->offline memory116
> > online->offline memory117
> > online->offline memory118
> > online->offline memory119
> > online->offline memory12
> > online->offline memory120
> > online->offline memory121
> > online->offline memory122
> > online->offline memory123
> > online->offline memory124
> 
> Can we have here an output like
> 
> online->offline memory0
> -> Failure
> online->offline memory10
> -> Success
> 
> That would make much more sense for debugging purposes and understanding
> what is happening here. I was primarily concerned about the misleading error
> message, that indicated that something is "unexpected" -- it's perfectly
> reasonable here to *expect* that offlining a random memory blocks just fails.

Yes, I will submit a new version of patches to implement it as your suggestiones:

1.  Redirect misleading msg to /dev/null
2.  Add an output for online->offline test

Thanks!


> 
> --
> Thanks,
> 
> David / dhildenb


^ permalink raw reply	[flat|nested] 7+ messages in thread
* Re: [PATCH -next v4 1/3] selftests/memory-hotplug: Add checking after online or offline
@ 2022-09-27 11:56 zhaogongyi
  2022-09-28 12:45 ` David Hildenbrand
  0 siblings, 1 reply; 7+ messages in thread
From: zhaogongyi @ 2022-09-27 11:56 UTC (permalink / raw)
  To: David Hildenbrand, linux-doc, linux-kernel, linux-mm, linux-kselftest
  Cc: akinobu.mita, corbet, osalvador, shuah

Hi!

> 
> On 27.09.22 05:28, 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>
> > ---
> >   .../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
> 
> 
> LGTM
> 
> Reviewed-by: David Hildenbrand <david@redhat.com>
> 
> 
> I am questioning the stability of the offlining test, though.
> Offlining a random memory block can fail easily, because "->removable" is not
> expressive:
> 
> # tools/testing/selftests/memory-hotplug/mem-on-off-test.sh
> Test scope: 2% hotplug memory
>           online all hot-pluggable memory in offline state:
>                   SKIPPED - no hot-pluggable memory in offline state
>           offline 2% hot-pluggable memory in online state
>           trying to offline 2 out of 96 memory block(s):
> online->offline memory0
> tools/testing/selftests/memory-hotplug/mem-on-off-test.sh: line 78: echo:
> write error: Invalid argument offline_memory_expect_success 0: unexpected
> fail
> online->offline memory10
> online->offline memory11
> 
> 
> I guess this test will almost always fail nowadays.

Offline some memory node maybe failed as expected, but the error message is a bit annoying.


> 
> --
> Thanks,
> 
> David / dhildenb


^ permalink raw reply	[flat|nested] 7+ messages in thread
* [PATCH -next v4 0/3] Optimize and bugfix for memory-hotplug
@ 2022-09-27  3:28 Zhao Gongyi
  2022-09-27  3:28 ` [PATCH -next v4 1/3] selftests/memory-hotplug: Add checking after online or offline Zhao Gongyi
  0 siblings, 1 reply; 7+ messages in thread
From: Zhao Gongyi @ 2022-09-27  3:28 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. Correct test's name

Changes in v4:
  - Remove redundant log information

Changes in v3:
  - Remove 2 obselute patches

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

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

--
2.17.1


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

end of thread, other threads:[~2022-09-29 12:08 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-09-29  7:39 [PATCH -next v4 1/3] selftests/memory-hotplug: Add checking after online or offline zhaogongyi
2022-09-29  9:04 ` David Hildenbrand
  -- strict thread matches above, loose matches on Subject: below --
2022-09-29 12:08 zhaogongyi
2022-09-27 11:56 zhaogongyi
2022-09-28 12:45 ` David Hildenbrand
2022-09-27  3:28 [PATCH -next v4 0/3] Optimize and bugfix for memory-hotplug Zhao Gongyi
2022-09-27  3:28 ` [PATCH -next v4 1/3] selftests/memory-hotplug: Add checking after online or offline Zhao Gongyi
2022-09-27  7:26   ` David Hildenbrand

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