From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 73DEE3B6C17 for ; Tue, 10 Mar 2026 16:43:10 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773160990; cv=none; b=pTqJ/Y6AytgoefsUMyg/Xq1CRR3tHb4NsmRWla/eiYs9vKIDJuzLhhhpDSISB3m8HNcMFqz0TeaIlITBHS6V8kX0Pz4juM03yNfl3WoEmriq13w4FGkf2Ci068IKe+1VakqUi8EAe6/R+73/iUwy0h6y5wI8kIMnmT92Mx67IEc= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773160990; c=relaxed/simple; bh=OrMs8zy9oIVh81tJWiSzk8ZJF7XUxyco+L/I/UCY2v0=; h=Date:To:From:Subject:Message-Id; b=ETpaSkPCL/r7IVsw8ZkiUvwWlvzXsHZlnEb6pzc0k6hNFZlKn0jOc1Ad4fDC7VCLQULNSSk8mIFiOmjeggBXjAn4KFytgFavT6z06Wwq99OmQAyJxYT8z0tBtp3OX64NpnluJXX9BeKT7EOslyaW+AycEvQzrdl39KnDf2jT3lc= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linux-foundation.org header.i=@linux-foundation.org header.b=Tg5HUBy8; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linux-foundation.org header.i=@linux-foundation.org header.b="Tg5HUBy8" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 06E91C19423; Tue, 10 Mar 2026 16:43:09 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linux-foundation.org; s=korg; t=1773160990; bh=OrMs8zy9oIVh81tJWiSzk8ZJF7XUxyco+L/I/UCY2v0=; h=Date:To:From:Subject:From; b=Tg5HUBy8ga/5TJrtHmMnvBpCdUa9lkoGLeXDc7dm2QfIeuvI/yP+F5g6n7u9sVZMx ZZSMFoEq7vPOSLfgcOtAjyB55BDKIrViPIDlz0Br2flXGkRVw42IIdGy1n9glK4LLk DJQAJmvrwDzL4xalJUFjPYq+lvr0L5VQzt6HcxJ8= Date: Tue, 10 Mar 2026 09:43:09 -0700 To: mm-commits@vger.kernel.org,ziy@nvidia.com,usama.anjum@collabora.com,tj@kernel.org,shuah@kernel.org,shakeel.butt@linux.dev,roman.gushchin@linux.dev,ritesh.list@gmail.com,osalvador@suse.de,muchun.song@linux.dev,mkoutny@suse.com,mhocko@kernel.org,lorenzo.stoakes@oracle.com,liam.howlett@oracle.com,hannes@cmpxchg.org,dev.jain@arm.com,david@kernel.org,sayalip@linux.ibm.com,akpm@linux-foundation.org From: Andrew Morton Subject: + selftest-mm-adjust-hugepage-mremap-test-size-for-large-huge-pages.patch added to mm-new branch Message-Id: <20260310164310.06E91C19423@smtp.kernel.org> Precedence: bulk X-Mailing-List: mm-commits@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: The patch titled Subject: selftest/mm: adjust hugepage-mremap test size for large huge pages has been added to the -mm mm-new branch. Its filename is selftest-mm-adjust-hugepage-mremap-test-size-for-large-huge-pages.patch This patch will shortly appear at https://git.kernel.org/pub/scm/linux/kernel/git/akpm/25-new.git/tree/patches/selftest-mm-adjust-hugepage-mremap-test-size-for-large-huge-pages.patch This patch will later appear in the mm-new branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm Note, mm-new is a provisional staging ground for work-in-progress patches, and acceptance into mm-new is a notification for others take notice and to finish up reviews. Please do not hesitate to respond to review feedback and post updated versions to replace or incrementally fixup patches in mm-new. The mm-new branch of mm.git is not included in linux-next If a few days of testing in mm-new is successful, the patch will me moved into mm.git's mm-unstable branch, which is included in linux-next Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/process/submit-checklist.rst when testing your code *** The -mm tree is included into linux-next via various branches at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm and is updated there most days ------------------------------------------------------ From: Sayali Patil Subject: selftest/mm: adjust hugepage-mremap test size for large huge pages Date: Tue, 10 Mar 2026 15:19:24 +0530 The hugepage-mremap selftest uses a default size of 10MB, which is sufficient for small huge page sizes. However, when the huge page size is large (e.g. 1GB), 10MB is smaller than a single huge page. As a result, the test does not trigger PMD sharing and the corresponding unshare path in mremap(), causing the test to fail (mremap succeeds where a failure is expected). Update run_vmtest.sh to use twice the huge page size when the huge page size exceeds 10MB, while retaining the 10MB default for smaller huge pages. This ensures the test exercises the intended PMD sharing and unsharing paths for larger huge page sizes. Before patch: running ./hugepage-mremap ------------------------------ TAP version 13 1..1 Map haddr: Returned address is 0x7eaa40000000 Map daddr: Returned address is 0x7daa40000000 Map vaddr: Returned address is 0x7faa40000000 Address returned by mmap() = 0x7fffaa600000 Mremap: Returned address is 0x7faa40000000 First hex is 0 First hex is 3020100 Bail out! mremap: Expected failure, but call succeeded Planned tests != run tests (1 != 0) Totals: pass:0 fail:0 xfail:0 xpass:0 skip:0 error:0 [FAIL] not ok 1 hugepage-mremap # exit=1 Before patch: running ./hugepage-mremap ------------------------------ TAP version 13 1..1 Map haddr: Returned address is 0x7eaa40000000 Map daddr: Returned address is 0x7daa40000000 Map vaddr: Returned address is 0x7faa40000000 Address returned by mmap() = 0x7fffaa600000 Mremap: Returned address is 0x7faa40000000 First hex is 0 First hex is 3020100 Bail out! mremap: Expected failure, but call succeeded Planned tests != run tests (1 != 0) Totals: pass:0 fail:0 xfail:0 xpass:0 skip:0 error:0 [FAIL] not ok 1 hugepage-mremap # exit=1 After patch: running ./hugepage-mremap 2048 ------------------------------ TAP version 13 1..1 Map haddr: Returned address is 0x7eaa40000000 Map daddr: Returned address is 0x7daa40000000 Map vaddr: Returned address is 0x7faa40000000 Address returned by mmap() = 0x7fff13000000 Mremap: Returned address is 0x7faa40000000 First hex is 0 First hex is 3020100 ok 1 Read same data Totals: pass:1 fail:0 xfail:0 xpass:0 skip:0 error:0 [PASS] ok 1 hugepage-mremap 2048 Link: https://lkml.kernel.org/r/a5fc759e5896898bf930382f4a353771f4249204.1773134177.git.sayalip@linux.ibm.com Fixes: f77a286de48c ("mm, hugepages: make memory size variable in hugepage-mremap selftest") Signed-off-by: Sayali Patil Cc: David Hildenbrand Cc: Dev Jain Cc: Johannes Weiner Cc: Liam Howlett Cc: Lorenzo Stoakes Cc: Michal Hocko Cc: "Michal Koutný" Cc: Muchun Song Cc: Muhammad Usama Anjum Cc: Oscar Salvador Cc: "Ritesh Harjani (IBM)" Cc: Roman Gushchin Cc: Shakeel Butt Cc: Shuah Khan Cc: Tejun Heo Cc: Zi Yan Signed-off-by: Andrew Morton --- tools/testing/selftests/mm/run_vmtests.sh | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) --- a/tools/testing/selftests/mm/run_vmtests.sh~selftest-mm-adjust-hugepage-mremap-test-size-for-large-huge-pages +++ a/tools/testing/selftests/mm/run_vmtests.sh @@ -293,7 +293,18 @@ echo "$shmmax" > /proc/sys/kernel/shmmax echo "$shmall" > /proc/sys/kernel/shmall CATEGORY="hugetlb" run_test ./map_hugetlb -CATEGORY="hugetlb" run_test ./hugepage-mremap + +# If the huge page size is larger than 10MB, increase the test memory size +# to twice the huge page size (in MB) to ensure the test exercises PMD sharing +# and the unshare path in hugepage-mremap. Otherwise, run the test with +# the default 10MB memory size. +if [ "$hpgsize_KB" -gt 10240 ]; then + len_mb=$(( (2 * hpgsize_KB) / 1024 )) + CATEGORY="hugetlb" run_test ./hugepage-mremap "${len_mb}" +else + CATEGORY="hugetlb" run_test ./hugepage-mremap +fi + CATEGORY="hugetlb" run_test ./hugepage-vmemmap CATEGORY="hugetlb" run_test ./hugetlb-madvise CATEGORY="hugetlb" run_test ./hugetlb_dio _ Patches currently in -mm which might be from sayalip@linux.ibm.com are selftests-mm-restore-default-nr_hugepages-value-during-cleanup-in-charge_reserved_hugetlbsh.patch selftests-mm-fix-hugetlb-pathname-construction-in-charge_reserved_hugetlbsh.patch selftests-mm-fix-hugetlb-pathname-construction-in-hugetlb_reparenting_testsh.patch selftest-mm-fix-cgroup-task-placement-and-tolerance-in-hugetlb_reparenting_testsh.patch selftests-mm-size-tmpfs-according-to-pmd-page-size-in-split_huge_page_test.patch selftest-mm-adjust-hugepage-mremap-test-size-for-large-huge-pages.patch selftest-mm-register-existing-mapping-with-userfaultfd-in-hugepage-mremap.patch selftests-mm-ensure-destination-is-hugetlb-backed-in-hugepage-mremap.patch selftests-mm-skip-uffd-wp-mremap-if-uffd-write-protect-is-unsupported.patch selftests-mm-skip-uffd-stress-test-when-nr_pages_per_cpu-is-zero.patch selftests-mm-fix-double-increment-in-linked-list-cleanup-in-compaction_test.patch selftests-mm-move-hwpoison-setup-into-run_test-and-silence-modprobe-output-for-memory-failure-category.patch selftests-cgroup-extend-test_hugetlb_memcgc-to-support-all-huge-page-sizes.patch