linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] mm: Remove PMD alignment constraint in execmem_vmalloc()
@ 2025-09-18  9:34 Dev Jain
  2025-09-18 10:33 ` Mike Rapoport
  2025-09-22  6:02 ` Anshuman Khandual
  0 siblings, 2 replies; 6+ messages in thread
From: Dev Jain @ 2025-09-18  9:34 UTC (permalink / raw)
  To: akpm; +Cc: rppt, ryan.roberts, linux-mm, linux-kernel, Dev Jain

When using vmalloc with VM_ALLOW_HUGE_VMAP flag, it will set the alignment
to PMD_SIZE internally, if it deems huge mappings to be eligible.
Therefore, setting the alignment in execmem_vmalloc is redundant. Apart
from this, it also reduces the probability of allocation in case vmalloc
fails to allocate hugepages - in the fallback case, vmalloc tries to use
the original alignment and allocate basepages, which unfortunately will
again be PMD_SIZE passed over from execmem_vmalloc, thus constraining
the search for a free space in vmalloc region.

Therefore, remove this constraint.

Signed-off-by: Dev Jain <dev.jain@arm.com>
---
mm-selftests pass, but I am not sure if they touch execmem code, and I
have no experience with this code.

 mm/execmem.c | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/mm/execmem.c b/mm/execmem.c
index 0822305413ec..810a4ba9c924 100644
--- a/mm/execmem.c
+++ b/mm/execmem.c
@@ -38,9 +38,6 @@ static void *execmem_vmalloc(struct execmem_range *range, size_t size,
 	if (kasan)
 		vm_flags |= VM_DEFER_KMEMLEAK;
 
-	if (vm_flags & VM_ALLOW_HUGE_VMAP)
-		align = PMD_SIZE;
-
 	p = __vmalloc_node_range(size, align, start, end, gfp_flags,
 				 pgprot, vm_flags, NUMA_NO_NODE,
 				 __builtin_return_address(0));
-- 
2.30.2



^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2025-09-22  6:50 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-09-18  9:34 [PATCH] mm: Remove PMD alignment constraint in execmem_vmalloc() Dev Jain
2025-09-18 10:33 ` Mike Rapoport
2025-09-18 13:06   ` Ryan Roberts
2025-09-21  7:39     ` Mike Rapoport
2025-09-22  6:02 ` Anshuman Khandual
2025-09-22  6:50   ` Dev Jain

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox