linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
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@redhat.com>,
	Michal Hocko <mhocko@kernel.org>,
	Oscar Salvador <osalvador@suse.de>,
	Lorenzo Stoakes <lorenzo.stoakes@oracle.com>,
	Dev Jain <dev.jain@arm.com>,
	Muhammad Usama Anjum <usama.anjum@collabora.com>,
	Liam.Howlett@oracle.com
Subject: Re: [PATCH 08/13] selftests/mm: ensure destination is hugetlb-backed in hugepage-mremap
Date: Tue, 10 Mar 2026 15:07:04 -0400	[thread overview]
Message-ID: <71CC3158-F540-4A12-AC14-10655E50B2DF@nvidia.com> (raw)
In-Reply-To: <2c8858154273159f964236810c7304dec665b28b.1773134177.git.sayalip@linux.ibm.com>

On 10 Mar 2026, at 5:49, Sayali Patil wrote:

> The hugepage-mremap selftest reserves the destination address using a
> anonymous base-page mapping before calling mremap() with MREMAP_FIXED,
> while the source region is hugetlb-backed.
>
> When remapping a hugetlb mapping into a base-page VMA may fail with:
>
>     mremap: Device or resource busy
>
> This is observed on powerpc hash MMU systems where slice constraints
> and page size incompatibilities prevent the remap.
>
> Ensure the destination region is created using MAP_HUGETLB so that both
> source and destination VMAs are hugetlb-backed and compatible. Also add
> MAP_POPULATE to the destination mapping to prefault hugepages,
> matching the behaviour used for other hugetlb mappiing in the test and
> ensuring deterministic behaviour.
>
> This ensures the test reliably exercises hugetlb mremap instead of
> failing due to VMA type mismatch.
>
> Fixes: 12b613206474 ("mm, hugepages: add hugetlb vma mremap() test")
> Signed-off-by: Sayali Patil <sayalip@linux.ibm.com>
> ---
>  tools/testing/selftests/mm/hugepage-mremap.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/tools/testing/selftests/mm/hugepage-mremap.c b/tools/testing/selftests/mm/hugepage-mremap.c
> index e611249080d6..9558515c282d 100644
> --- a/tools/testing/selftests/mm/hugepage-mremap.c
> +++ b/tools/testing/selftests/mm/hugepage-mremap.c
> @@ -136,8 +136,8 @@ int main(int argc, char *argv[])
>  		ksft_exit_fail_msg("mmap3: %s\n", strerror(errno));
>
>  	suggested_addr = 0x7faa40000000;
> -	void *vaddr =
> -		mmap((void *)suggested_addr, length, PROTECTION, FLAGS, -1, 0);
> +	void *vaddr = mmap((void *)suggested_addr, length, PROTECTION,
> +			MAP_HUGETLB | MAP_SHARED | MAP_POPULATE, fd, 0);

FLAGS is only used here, why not change the definition of FLAGS
or remove FLAGS along with your change?

Feel free to add

Acked-by: Zi Yan <ziy@nvidia.com>

after you do either above.

Best Regards,
Yan, Zi


  reply	other threads:[~2026-03-10 19:07 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-03-10  9:49 [PATCH 00/13] selftests/mm: fix failures and robustness improvements Sayali Patil
2026-03-10  9:49 ` [PATCH 01/13] selftests/mm: restore default nr_hugepages value during cleanup in charge_reserved_hugetlb.sh Sayali Patil
2026-03-10 18:43   ` Zi Yan
2026-03-10  9:49 ` [PATCH 02/13] selftests/mm: fix hugetlb pathname construction " Sayali Patil
2026-03-10 18:54   ` Zi Yan
2026-03-10  9:49 ` [PATCH 03/13] selftests/mm: fix hugetlb pathname construction in hugetlb_reparenting_test.sh Sayali Patil
2026-03-10 18:55   ` Zi Yan
2026-03-10  9:49 ` [PATCH 04/13] selftest/mm: fix cgroup task placement and tolerance " Sayali Patil
2026-03-10  9:49 ` [PATCH 05/13] selftests/mm: size tmpfs according to PMD page size in split_huge_page_test Sayali Patil
2026-03-10 18:59   ` Zi Yan
2026-03-10  9:49 ` [PATCH 06/13] selftest/mm: adjust hugepage-mremap test size for large huge pages Sayali Patil
2026-03-10 19:01   ` Zi Yan
2026-03-10  9:49 ` [PATCH 07/13] selftest/mm: register existing mapping with userfaultfd in hugepage-mremap Sayali Patil
2026-03-10  9:49 ` [PATCH 08/13] selftests/mm: ensure destination is hugetlb-backed " Sayali Patil
2026-03-10 19:07   ` Zi Yan [this message]
2026-03-10  9:49 ` [PATCH 09/13] selftests/mm: skip uffd-wp-mremap if UFFD write-protect is unsupported Sayali Patil
2026-03-10 19:07   ` Zi Yan
2026-03-10  9:49 ` [PATCH 10/13] selftests/mm: skip uffd-stress test when nr_pages_per_cpu is zero Sayali Patil
2026-03-10 19:08   ` Zi Yan
2026-03-10  9:49 ` [PATCH 11/13] selftests/mm: fix double increment in linked list cleanup in compaction_test Sayali Patil
2026-03-10 19:10   ` Zi Yan
2026-03-10  9:49 ` [PATCH 12/13] selftests/mm: move hwpoison setup into run_test() and silence modprobe output for memory-failure category Sayali Patil
2026-03-10 19:15   ` Zi Yan
2026-03-11  2:21     ` Miaohe Lin
2026-03-10  9:49 ` [PATCH 13/13] selftests/cgroup: extend test_hugetlb_memcg.c to support all huge page sizes Sayali Patil

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=71CC3158-F540-4A12-AC14-10655E50B2DF@nvidia.com \
    --to=ziy@nvidia.com \
    --cc=Liam.Howlett@oracle.com \
    --cc=akpm@linux-foundation.org \
    --cc=david@redhat.com \
    --cc=dev.jain@arm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-kselftest@vger.kernel.org \
    --cc=linux-mm@kvack.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=usama.anjum@collabora.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