From: "David Hildenbrand (Red Hat)" <david@kernel.org>
To: Luiz Capitulino <luizcap@redhat.com>,
linux-kernel@vger.kernel.org, linux-mm@kvack.org
Cc: ryan.roberts@arm.com, akpm@linux-foundation.org,
lorenzo.stoakes@oracle.com
Subject: Re: [RFC 09/10] mm: thp: always enable mTHP support
Date: Mon, 17 Nov 2025 18:47:13 +0100 [thread overview]
Message-ID: <dac20466-adac-4e47-8f50-87f4774fd57b@kernel.org> (raw)
In-Reply-To: <e9a6a123a03a122010cc10708391db901b11c7a7.1762464515.git.luizcap@redhat.com>
On 06.11.25 22:28, Luiz Capitulino wrote:
> If PMD-sized pages are not supported on an architecture (ie. the
> arch implements arch_has_pmd_leaves() and it returns false) then the
> current code disables all THP, including mTHP.
>
> This commit fixes this by allowing mTHP to be always enabled for all
> archs. When PMD-sized pages are not supported, its sysfs entry won't be
> created and their mapping will be disallowed at page-fault time.
>
> Signed-off-by: Luiz Capitulino <luizcap@redhat.com>
> ---
> mm/huge_memory.c | 11 +++++++----
> 1 file changed, 7 insertions(+), 4 deletions(-)
>
> diff --git a/mm/huge_memory.c b/mm/huge_memory.c
> index 0f016ea7082d..4117833c53ef 100644
> --- a/mm/huge_memory.c
> +++ b/mm/huge_memory.c
> @@ -115,6 +115,9 @@ unsigned long __thp_vma_allowable_orders(struct vm_area_struct *vma,
> else
> supported_orders = THP_ORDERS_ALL_FILE_DEFAULT;
>
> + if (!pgtable_has_pmd_leaves())
> + supported_orders &= ~BIT(PMD_ORDER);
> +
Won't this leave PUD_ORDER set?
Ideally, later we'd also have a
if (!pgtable_has_pud_leaves())
supported_orders &= ~BIT(PUD_ORDER);
For now you could simply clear PUD_ORDER for now as well.
No PMD leaves -> No PUD leaves, so clear them in all cases to not leave
PUD_ORDER set.
--
Cheers
David
next prev parent reply other threads:[~2025-11-17 17:47 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-11-06 21:28 [RFC 00/10] mm: thp: always enable mTHP support Luiz Capitulino
2025-11-06 21:28 ` [RFC 01/10] docs: tmpfs: remove implementation detail reference Luiz Capitulino
2025-11-17 17:26 ` David Hildenbrand (Red Hat)
2025-11-06 21:28 ` [RFC 02/10] mm: introduce pgtable_has_pmd_leaves() Luiz Capitulino
2025-11-06 21:28 ` [RFC 03/10] drivers: dax: use pgtable_has_pmd_leaves() Luiz Capitulino
2025-11-17 17:28 ` David Hildenbrand (Red Hat)
2025-11-06 21:28 ` [RFC 04/10] drivers: i915 selftest: " Luiz Capitulino
2025-11-17 17:29 ` David Hildenbrand (Red Hat)
2025-11-17 17:30 ` David Hildenbrand (Red Hat)
2025-11-17 18:55 ` Luiz Capitulino
2025-12-02 10:51 ` David Hildenbrand (Red Hat)
2025-12-03 13:19 ` Luiz Capitulino
2025-11-06 21:28 ` [RFC 05/10] drivers: nvdimm: " Luiz Capitulino
2025-11-17 17:32 ` David Hildenbrand (Red Hat)
2025-11-06 21:28 ` [RFC 06/10] mm: debug_vm_pgtable: " Luiz Capitulino
2025-11-17 17:40 ` David Hildenbrand (Red Hat)
2025-12-03 22:09 ` David Hildenbrand (Red Hat)
2025-11-06 21:28 ` [RFC 07/10] treewide: rename has_transparent_hugepage() to arch_has_pmd_leaves() Luiz Capitulino
2025-11-17 17:45 ` David Hildenbrand (Red Hat)
2025-11-17 19:01 ` Luiz Capitulino
2025-12-02 10:53 ` David Hildenbrand (Red Hat)
2025-11-06 21:28 ` [RFC 08/10] mm: replace thp_disabled_by_hw() with pgtable_has_pmd_leaves() Luiz Capitulino
2025-11-06 21:28 ` [RFC 09/10] mm: thp: always enable mTHP support Luiz Capitulino
2025-11-17 17:47 ` David Hildenbrand (Red Hat) [this message]
2025-11-17 19:14 ` Luiz Capitulino
2025-11-06 21:28 ` [RFC 10/10] mm: thp: x86: cleanup PSE feature bit usage Luiz Capitulino
2025-11-17 17:49 ` David Hildenbrand (Red Hat)
2025-11-17 19:15 ` Luiz Capitulino
2025-12-03 13:58 ` [RFC 00/10] mm: thp: always enable mTHP support Lorenzo Stoakes
2025-12-03 18:41 ` Luiz Capitulino
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=dac20466-adac-4e47-8f50-87f4774fd57b@kernel.org \
--to=david@kernel.org \
--cc=akpm@linux-foundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=lorenzo.stoakes@oracle.com \
--cc=luizcap@redhat.com \
--cc=ryan.roberts@arm.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.