On Wed, Sep 23, 2026 at 02:28:30PM +0800, Wen Jiang wrote: > Extract the vmalloc mapping shift selection from > __vmalloc_node_range_noprof() into vm_shift(), preparing for reuse by the > vmap batching path. > > No functional change. > > Suggested-by: Dev Jain <[email protected]> > Signed-off-by: Wen Jiang <[email protected]> > Tested-by: Xueyuan Chen <[email protected]> > Tested-by: Leo Yan <[email protected]> > --- > mm/vmalloc.c | 14 +++++++++----- > 1 file changed, 9 insertions(+), 5 deletions(-) > > diff --git a/mm/vmalloc.c b/mm/vmalloc.c > index 6e0dec73107a7..a43965016eb4d 100644 > --- a/mm/vmalloc.c > +++ b/mm/vmalloc.c > @@ -3568,6 +3568,14 @@ void vunmap(const void *addr) > } > EXPORT_SYMBOL(vunmap); > > +static inline unsigned int vm_shift(pgprot_t prot, unsigned long size) > +{ > + if (arch_vmap_pmd_supported(prot) && size >= PMD_SIZE) > + return PMD_SHIFT; > + > + return arch_vmap_pte_supported_shift(size); > +} > + > /** > * vmap - map an array of pages into virtually contiguous space > * @pages: array of page pointers > @@ -4079,11 +4087,7 @@ void *__vmalloc_node_range_noprof(unsigned long size, > unsigned long align, > * supporting them. > */ > > - if (arch_vmap_pmd_supported(prot) && size >= PMD_SIZE) > - shift = PMD_SHIFT; > - else > - shift = arch_vmap_pte_supported_shift(size); > - > + shift = vm_shift(prot, size); > align = max(original_align, 1UL << shift); > } > > -- > 2.34.1 > Reviewed-by: Uladzislau Rezki (Sony) <[email protected]>
-- Uladzislau Rezki
