Re: [PATCH v2 0/6] Open HugeTLB allocation routine for more generic use

From: Ackerley Tng

Date: Mon May 18 2026 - 16:17:12 EST


Oscar Salvador <osalvador@xxxxxxx> writes:

> On Wed, May 06, 2026 at 08:54:36AM -0700, Ackerley Tng via B4 Relay wrote:
>> Hi,
>>
>> The motivation for this patch series is guest_memfd, which would like
>> to use HugeTLB as a generic source of huge pages but not adopt
>> HugeTLB's reservation at mmap() time.
>>
>> By refactoring alloc_hugetlb_folio() and some dependent functions,
>> there is now an option to allocate HugeTLB folios without providing a
>> VMA. Specifically, HugeTLB allocation used to be dependent on the VMA
>> to
>>
>> 1. Look up reservations in the resv_map
>> 2. Get mpol, stored at vma->vm_policy
>>
>> This refactoring provides hugetlb_alloc_folio(), which focuses on just
>> the allocation itself, and associated memory and HugeTLB charging
>> (cgroups). alloc_hugetlb_folio() still handles reservations in the
>> resv_map and subpools.
>>
>> Regarding naming, I'm definitely open to alternative names :) I chose
>> hugetlb_alloc_folio() because I'm seeing this function as a general
>> allocation function that is provided by the HugeTLB subsystem (hence
>> the hugetlb_ prefix). I'm intending for alloc_hugetlb_folio() to be
>> later refactored as a static function for use just by HugeTLB, and
>> HugeTLBfs should probably use hugetlb_alloc_folio() directly.
>>
>> To see how hugetlb_alloc_folio() is used by guest_memfd, the most
>> recent patch series that uses this more generic HugeTLB allocation
>> routine is at [1], and a newer revision of that patch series is at
>> [2].
>
> Would that be
>
> https://lore.kernel.org/all/cover.1747264138.git.ackerleytng@xxxxxxxxxx/T/#me2152fa2cc79d651ecea7a2bce8b57725fb57465
>
> ?

Thanks for checking :)

The link you have is the latest patch series I posted (let's call that
[*]), but [2], or
https://github.com/googleprodkernel/linux-cc/tree/wip-gmem-conversions-hugetlb-restructuring-12-08-25
is even newer than [*].

[2] has some more bugfixes, and is also on a newer version of
guest_memfd conversions patch series than [*].

>
>
> --
> Oscar Salvador
> SUSE Labs