]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
mm: remove PMD alignment constraint in execmem_vmalloc()
authorDev Jain <dev.jain@arm.com>
Thu, 18 Sep 2025 09:34:53 +0000 (15:04 +0530)
committerAndrew Morton <akpm@linux-foundation.org>
Sun, 28 Sep 2025 18:51:31 +0000 (11:51 -0700)
commit4afb85f5e359e521ef20c0260af17a4490fc83f7
tree169e0716553ddf90c9d6f0774c9583826819fc7d
parent51032f26cff7a5ab458d549d88b905ca5bf7a7f5
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>
mm/execmem.c