From: Zi Yan <ziy@nvidia.com>
To: Sayali Patil <sayalip@linux.ibm.com>
Cc: Andrew Morton <akpm@linux-foundation.org>,
Shuah Khan <shuah@kernel.org>,
linux-mm@kvack.org, linux-kernel@vger.kernel.org,
linux-kselftest@vger.kernel.org,
Ritesh Harjani <ritesh.list@gmail.com>,
David Hildenbrand <david@kernel.org>,
Michal Hocko <mhocko@kernel.org>,
Oscar Salvador <osalvador@suse.de>,
Lorenzo Stoakes <lorenzo.stoakes@oracle.com>,
Dev Jain <dev.jain@arm.com>,
Liam.Howlett@oracle.com, linuxppc-dev@lists.ozlabs.org,
Miaohe Lin <linmiaohe@huawei.com>,
Venkat Rao Bagalkote <venkat88@linux.ibm.com>
Subject: Re: [PATCH v4 13/15] selftests/mm: move hwpoison setup into run_test() and silence modprobe output for memory-failure category
Date: Wed, 08 Apr 2026 11:40:59 -0400 [thread overview]
Message-ID: <B686276F-89E5-4192-8973-3B787FC8AC86@nvidia.com> (raw)
In-Reply-To: <5888f69f-c336-4151-a9ac-9b0b00f9c3bb@linux.ibm.com>
On 8 Apr 2026, at 4:36, Sayali Patil wrote:
> On 07/04/26 20:21, Zi Yan wrote:
>> On 6 Apr 2026, at 5:19, Sayali Patil wrote:
>>
>>> run_vmtests.sh contains special handling to ensure the hwpoison_inject
>>> module is available for the memory-failure tests. This logic was
>>> implemented outside of run_test(), making the setup category-specific
>>> but managed globally.
>>>
>>> Move the hwpoison_inject handling into run_test() and restrict it
>>> to the memory-failure category so that:
>>> 1. the module is checked and loaded only when memory-failure tests run,
>>> 2. the test is skipped if the module or the debugfs interface
>>> (/sys/kernel/debug/hwpoison/) is not available.
>>> 3. the module is unloaded after the test if it was loaded by the script.
>>>
>>> This localizes category-specific setup and makes the test flow
>>> consistent with other per-category preparations.
>>>
>>> While updating this logic, fix the module availability check.
>>> The script previously used:
>>>
>>> modprobe -R hwpoison_inject
>>>
>>> The -R option prints the resolved module name to stdout, causing every
>>> run to print:
>>>
>>> hwpoison_inject
>>>
>>> in the test output, even when no action is required, introducing
>>> unnecessary noise.
>>>
>>> Replace this with:
>>>
>>> modprobe -n hwpoison_inject
>>>
>>> which verifies that the module is loadable without producing output,
>>> keeping the selftest logs clean and consistent.
>>>
>>> Also, ensure that skipped tests do not override a previously recorded
>>> failure. A skipped test currently sets exitcode to ksft_skip even if a
>>> prior test has failed, which can mask failures in the final exit status.
>>> Update the logic to only set exitcode to ksft_skip when no failure has
>>> been recorded.
>>>
>>> Fixes: ff4ef2fbd101 ("selftests/mm: add memory failure anonymous page test")
>>> Signed-off-by: Sayali Patil <sayalip@linux.ibm.com>
>>> ---
>>> tools/testing/selftests/mm/run_vmtests.sh | 52 ++++++++++++++---------
>>> 1 file changed, 33 insertions(+), 19 deletions(-)
>>>
>>> diff --git a/tools/testing/selftests/mm/run_vmtests.sh b/tools/testing/selftests/mm/run_vmtests.sh
>>> index afdcfd0d7cef..17c9bd910c47 100755
>>> --- a/tools/testing/selftests/mm/run_vmtests.sh
>>> +++ b/tools/testing/selftests/mm/run_vmtests.sh
>>> @@ -235,6 +235,7 @@ pretty_name() {
>>> run_test() {
>>> if test_selected ${CATEGORY}; then
>>> local skip=0
>>> + local LOADED_MOD=0
>>
>> Can you rename it to LOADED_MEMORY_FAILURE_MOD to clarify its use?
>> Since now LOADED_MOD is visible for the entire run_test().
>
> Thanks for the review!
>
> I kept it as LOADED_MOD and specified it as a local variable intentionally. The idea was that, if any future tests are added that need to verify whether the module was loaded, they can reuse the same variable. For that reason, I did not make it specific to the memory failure test.
You mean future tests that use hwpoison_inject module? Or any future tests
that load a module? For the former, you can use LOADED_HWPOISON_INJECT_MOD;
for the latter, I am not sure how a single LOADED_MOD would work for
different modules and that probably would need new code for that case.
My point is that since LOADED_MOD is now in the scope of run_test(), it is
unclear which test uses it without reading the entire run_test(). Giving a
specific name improves readability.
Best Regards,
Yan, Zi
next prev parent reply other threads:[~2026-04-08 15:41 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-04-06 9:19 [PATCH v4 00/15] selftests/mm: fix failures and robustness improvements Sayali Patil
2026-04-06 9:19 ` [PATCH v4 01/15] selftests/mm: restore default nr_hugepages value via EXIT trap in charge_reserved_hugetlb.sh Sayali Patil
2026-04-07 14:38 ` Zi Yan
2026-04-06 9:19 ` [PATCH v4 02/15] selftests/mm: fix hugetlb pathname construction " Sayali Patil
2026-04-06 9:19 ` [PATCH v4 03/15] selftests/mm: restore default nr_hugepages value via EXIT trap in hugetlb_reparenting_test.sh Sayali Patil
2026-04-07 14:39 ` Zi Yan
2026-04-06 9:19 ` [PATCH v4 04/15] selftests/mm: fix hugetlb pathname construction " Sayali Patil
2026-04-06 9:19 ` [PATCH v4 05/15] selftests/mm: fix cgroup task placement and drop memory.current checks " Sayali Patil
2026-04-06 9:19 ` [PATCH v4 06/15] selftests/mm: size tmpfs according to PMD page size in split_huge_page_test Sayali Patil
2026-04-06 9:19 ` [PATCH v4 07/15] selftests/mm: free dynamically allocated PMD-sized buffers " Sayali Patil
2026-04-07 14:44 ` Zi Yan
2026-04-06 9:19 ` [PATCH v4 08/15] selftest/mm: align memory size to huge page size in hugepage-mremap test Sayali Patil
2026-04-07 14:57 ` Zi Yan
2026-04-08 14:30 ` Sayali Patil
2026-04-06 9:19 ` [PATCH v4 09/15] selftest/mm: register existing mapping with userfaultfd in hugepage-mremap Sayali Patil
2026-04-06 9:19 ` [PATCH v4 10/15] selftests/mm: ensure destination is hugetlb-backed " Sayali Patil
2026-04-06 9:19 ` [PATCH v4 11/15] selftests/mm: skip uffd-wp-mremap if UFFD write-protect is unsupported Sayali Patil
2026-04-06 9:19 ` [PATCH v4 12/15] selftests/mm: skip uffd-stress test when nr_pages_per_cpu is zero Sayali Patil
2026-04-06 9:19 ` [PATCH v4 13/15] selftests/mm: move hwpoison setup into run_test() and silence modprobe output for memory-failure category Sayali Patil
2026-04-07 14:51 ` Zi Yan
2026-04-08 8:36 ` Sayali Patil
2026-04-08 15:40 ` Zi Yan [this message]
2026-04-06 9:19 ` [PATCH v4 14/15] selftests/mm: clarify alternate unmapping in compaction_test Sayali Patil
2026-04-06 9:19 ` [PATCH v4 15/15] selftests/cgroup: extend test_hugetlb_memcg.c to support all huge page sizes Sayali Patil
2026-04-07 12:07 ` Sayali Patil
2026-04-07 13:08 ` [PATCH v4 00/15] selftests/mm: fix failures and robustness improvements Venkat
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=B686276F-89E5-4192-8973-3B787FC8AC86@nvidia.com \
--to=ziy@nvidia.com \
--cc=Liam.Howlett@oracle.com \
--cc=akpm@linux-foundation.org \
--cc=david@kernel.org \
--cc=dev.jain@arm.com \
--cc=linmiaohe@huawei.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-kselftest@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=lorenzo.stoakes@oracle.com \
--cc=mhocko@kernel.org \
--cc=osalvador@suse.de \
--cc=ritesh.list@gmail.com \
--cc=sayalip@linux.ibm.com \
--cc=shuah@kernel.org \
--cc=venkat88@linux.ibm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox