mirror of https://github.com/torvalds/linux.git
mm: remove PMD alignment constraint in execmem_vmalloc()
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. Link: https://lkml.kernel.org/r/20250918093453.75676-1-dev.jain@arm.com Signed-off-by: Dev Jain <dev.jain@arm.com> Reviewed-by: Mike Rapoport (Microsoft) <rppt@kernel.org> Cc: Ryan Roberts <ryan.roberts@arm.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
This commit is contained in:
parent
51032f26cf
commit
4afb85f5e3
|
|
@ -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));
|
||||
|
|
|
|||
Loading…
Reference in New Issue