The Linux Kernel Mailing List
 help / color / mirror / Atom feed
From: Sarthak Sharma <sarthak.sharma@arm.com>
To: Mike Rapoport <rppt@kernel.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	David Hildenbrand <david@kernel.org>
Cc: Baolin Wang <baolin.wang@linux.alibaba.com>,
	Barry Song <baohua@kernel.org>, Dev Jain <dev.jain@arm.com>,
	Donet Tom <donettom@linux.ibm.com>,
	Jason Gunthorpe <jgg@ziepe.ca>,
	John Hubbard <jhubbard@nvidia.com>,
	"Liam R. Howlett" <Liam.Howlett@oracle.com>,
	Lance Yang <lance.yang@linux.dev>,
	Leon Romanovsky <leon@kernel.org>,
	Lorenzo Stoakes <ljs@kernel.org>,
	Luiz Capitulino <luizcap@redhat.com>,
	Mark Brown <broonie@kernel.org>, Michal Hocko <mhocko@suse.com>,
	Nico Pache <npache@redhat.com>, Peter Xu <peterx@redhat.com>,
	Ryan Roberts <ryan.roberts@arm.com>,
	Shuah Khan <shuah@kernel.org>,
	Suren Baghdasaryan <surenb@google.com>,
	Vlastimil Babka <vbabka@kernel.org>, Zi Yan <ziy@nvidia.com>,
	linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org,
	linux-mm@kvack.org
Subject: Re: [PATCH v3 48/54] selftests/mm: uffd-stress: use hugetlb_save and alloc huge pages
Date: Thu, 7 May 2026 17:28:57 +0530	[thread overview]
Message-ID: <45b6fb2e-3a24-4346-9d8b-158967c88ffb@arm.com> (raw)
In-Reply-To: <20260428204240.1924129-49-rppt@kernel.org>



On 4/29/26 2:12 AM, Mike Rapoport wrote:
> From: "Mike Rapoport (Microsoft)" <rppt@kernel.org>
> 
> uffd-stress skips HugeTLB tests if there are no free huge pages prepared
> by a wrapper script.
> 
> Add setup of HugeTLB pages to the test and make sure that the original
> settings are restored on the test exit.
> 
> Signed-off-by: Mike Rapoport (Microsoft) <rppt@kernel.org>

I ran the test using ./uffd-stress hugetlb 16 20

Before the patch, the test skipped with "not enough hugepages". After
the patch, the test correctly allocates the required hugepages and
passes successfully, restoring the original settings at exit.

Tested-by: Sarthak Sharma <sarthak.sharma@arm.com>

> ---
>  tools/testing/selftests/mm/uffd-stress.c | 9 ++++++---
>  1 file changed, 6 insertions(+), 3 deletions(-)
> 
> diff --git a/tools/testing/selftests/mm/uffd-stress.c b/tools/testing/selftests/mm/uffd-stress.c
> index 7e37cf3d27f6..9693d042f16f 100644
> --- a/tools/testing/selftests/mm/uffd-stress.c
> +++ b/tools/testing/selftests/mm/uffd-stress.c
> @@ -479,9 +479,12 @@ int main(int argc, char **argv)
>  	 * Ensure nr_parallel - 1 hugepages on top of that to account
>  	 * for racy extra reservation of hugepages.
>  	 */
> -	if (gopts->test_type == TEST_HUGETLB &&
> -	   hugetlb_free_default_pages() < 2 * (bytes / gopts->page_size) + gopts->nr_parallel - 1)
> -		ksft_exit_skip("Skipping userfaultfd... not enough hugepages\n");
> +	if (gopts->test_type == TEST_HUGETLB) {
> +		unsigned long nr = 2 * (bytes / gopts->page_size) + gopts->nr_parallel - 1;
> +
> +		if (!hugetlb_setup_default(nr))
> +			ksft_exit_skip("Skipping userfaultfd... not enough hugepages\n");
> +	}
>  
>  	gopts->nr_pages_per_cpu = bytes / gopts->page_size / gopts->nr_parallel;
>  	if (!gopts->nr_pages_per_cpu) {


  parent reply	other threads:[~2026-05-07 12:00 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20260428204240.1924129-1-rppt@kernel.org>
     [not found] ` <20260428204240.1924129-36-rppt@kernel.org>
2026-05-04 12:20   ` [PATCH v3 35/54] selftests/mm: hugepage_dio: add setup of HugeTLB pages Sarthak Sharma
2026-05-11  8:25     ` Mike Rapoport
     [not found] ` <20260428204240.1924129-41-rppt@kernel.org>
2026-05-05  6:51   ` [PATCH v3 40/54] selftests/mm: hugetlb-mremap: " Sarthak Sharma
     [not found] ` <20260428204240.1924129-43-rppt@kernel.org>
2026-05-05  7:15   ` [PATCH v3 42/54] selftests/mm: hugetlb-soft-online: " Sarthak Sharma
2026-05-11  8:25     ` Mike Rapoport
     [not found] ` <20260428204240.1924129-51-rppt@kernel.org>
2026-05-05 11:27   ` [PATCH v3 50/54] selftests/mm: uffd-wp-mremap: " Sarthak Sharma
     [not found] ` <20260428204240.1924129-42-rppt@kernel.org>
2026-05-05 11:33   ` [PATCH v3 41/54] selftests/mm: hugetlb-shm: " Sarthak Sharma
     [not found] ` <20260428204240.1924129-50-rppt@kernel.org>
2026-05-05 11:48   ` [PATCH v3 49/54] selftests/mm: uffd-unit-tests: " Sarthak Sharma
2026-05-11  8:28     ` Mike Rapoport
     [not found] ` <20260428204240.1924129-31-rppt@kernel.org>
     [not found]   ` <daa3e21f-0c48-456e-a4a8-198a8c907b9d@arm.com>
2026-05-05 15:26     ` [PATCH v3 30/54] selftests/mm: compaction_test: use HugeTLB helpers Mike Rapoport
     [not found] ` <20260428204240.1924129-18-rppt@kernel.org>
2026-05-06  8:57   ` [PATCH v3 17/54] selftests/mm: protection_keys: use kselftest framework Sarthak Sharma
     [not found] ` <20260428204240.1924129-21-rppt@kernel.org>
2026-05-06  9:02   ` [PATCH v3 20/54] selftests/mm: va_high_addr_switch: " Sarthak Sharma
     [not found] ` <20260428204240.1924129-23-rppt@kernel.org>
2026-05-06  9:12   ` [PATCH v3 22/54] selftests/mm: rename thp_settings.[ch] to hugepage_settings.[ch] Sarthak Sharma
     [not found] ` <20260428204240.1924129-24-rppt@kernel.org>
2026-05-06  9:14   ` [PATCH v3 23/54] selftests/mm: move HugeTLB helpers to hugepage_settings Sarthak Sharma
     [not found] ` <20260428204240.1924129-25-rppt@kernel.org>
2026-05-06  9:23   ` [PATCH v3 24/54] selftests/mm: hugepage_settings: use unsigned long in detect_hugetlb_page_size Sarthak Sharma
     [not found] ` <20260428204240.1924129-26-rppt@kernel.org>
2026-05-06 10:12   ` [PATCH v3 25/54] selftests/mm: hugepage_settings: add APIs to get and set nr_hugepages Sarthak Sharma
     [not found] ` <20260428204240.1924129-27-rppt@kernel.org>
2026-05-06 11:03   ` [PATCH v3 26/54] selftests/mm: hugepage_settings: rename get_free_hugepages() Sarthak Sharma
     [not found] ` <20260428204240.1924129-28-rppt@kernel.org>
     [not found]   ` <2f443474-4448-462e-bc1e-55bc657d70ba@redhat.com>
     [not found]     ` <afTF9RCy8eBoWYaj@kernel.org>
     [not found]       ` <22b1cadc-4b0d-4e2a-987c-e7a7bc2265eb@redhat.com>
     [not found]         ` <afV_WAK56lQKn_z1@kernel.org>
2026-05-04 13:04           ` [PATCH v3 27/54] selftests/mm: hugepage_settings: add APIs for HugeTLB setup and teardown Luiz Capitulino
2026-05-06 11:17   ` Sarthak Sharma
     [not found] ` <20260428204240.1924129-29-rppt@kernel.org>
2026-05-06 11:36   ` [PATCH v3 28/54] selftests/mm: move read_file(), read_num() and write_num() to vm_util Sarthak Sharma
     [not found] ` <20260428204240.1924129-30-rppt@kernel.org>
2026-05-06 12:01   ` [PATCH v3 29/54] selftests/mm: vm_util: add helpers to set and restore shm limits Sarthak Sharma
     [not found] ` <20260428204240.1924129-33-rppt@kernel.org>
2026-05-06 12:14   ` [PATCH v3 32/54] selftests/mm: gup_longterm: add setup of HugeTLB pages Sarthak Sharma
     [not found] ` <20260428204240.1924129-34-rppt@kernel.org>
2026-05-06 12:29   ` [PATCH v3 33/54] selftests/mm: gup_test: " Sarthak Sharma
     [not found] ` <20260428204240.1924129-37-rppt@kernel.org>
2026-05-07  9:53   ` [PATCH v3 36/54] selftests/mm: hugetlb_fault_after_madv: " Sarthak Sharma
     [not found] ` <20260428204240.1924129-38-rppt@kernel.org>
2026-05-07 10:28   ` [PATCH v3 37/54] selftests/mm: hugetlb-madvise: " Sarthak Sharma
     [not found] ` <20260428204240.1924129-39-rppt@kernel.org>
2026-05-07 10:32   ` [PATCH v3 38/54] selftests/mm: hugetlb_madv_vs_map: " Sarthak Sharma
     [not found] ` <20260428204240.1924129-40-rppt@kernel.org>
2026-05-07 10:38   ` [PATCH v3 39/54] selftests/mm: hugetlb-mmap: " Sarthak Sharma
     [not found] ` <20260428204240.1924129-44-rppt@kernel.org>
2026-05-07 11:27   ` [PATCH v3 43/54] selftests/mm: hugetlb-vmemmap: " Sarthak Sharma
     [not found] ` <20260428204240.1924129-45-rppt@kernel.org>
2026-05-07 11:36   ` [PATCH v3 44/54] selftests/mm: migration: " Sarthak Sharma
     [not found] ` <20260428204240.1924129-46-rppt@kernel.org>
2026-05-07 11:41   ` [PATCH v3 45/54] selftests/mm: pagemap_ioctl: " Sarthak Sharma
     [not found] ` <20260428204240.1924129-48-rppt@kernel.org>
2026-05-07 11:50   ` [PATCH v3 47/54] selftests/mm: thuge-gen: " Sarthak Sharma
     [not found] ` <20260428204240.1924129-49-rppt@kernel.org>
2026-05-07 11:58   ` Sarthak Sharma [this message]
     [not found] ` <20260428204240.1924129-54-rppt@kernel.org>
2026-05-07 12:07   ` [PATCH v3 53/54] selftests/mm: run_vmtests.sh: free memory if available memory is low Sarthak Sharma
     [not found] ` <20260428204240.1924129-55-rppt@kernel.org>
2026-05-07 12:10   ` [PATCH v3 54/54] selftests/mm: run_vmtests.sh: drop detection and setup of HugeTLB Sarthak Sharma

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=45b6fb2e-3a24-4346-9d8b-158967c88ffb@arm.com \
    --to=sarthak.sharma@arm.com \
    --cc=Liam.Howlett@oracle.com \
    --cc=akpm@linux-foundation.org \
    --cc=baohua@kernel.org \
    --cc=baolin.wang@linux.alibaba.com \
    --cc=broonie@kernel.org \
    --cc=david@kernel.org \
    --cc=dev.jain@arm.com \
    --cc=donettom@linux.ibm.com \
    --cc=jgg@ziepe.ca \
    --cc=jhubbard@nvidia.com \
    --cc=lance.yang@linux.dev \
    --cc=leon@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-kselftest@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=ljs@kernel.org \
    --cc=luizcap@redhat.com \
    --cc=mhocko@suse.com \
    --cc=npache@redhat.com \
    --cc=peterx@redhat.com \
    --cc=rppt@kernel.org \
    --cc=ryan.roberts@arm.com \
    --cc=shuah@kernel.org \
    --cc=surenb@google.com \
    --cc=vbabka@kernel.org \
    --cc=ziy@nvidia.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