> > > diff --git a/mm/vmalloc.c b/mm/vmalloc.c
> > > index d475e52110e4a..6e0dec73107a7 100644
> > > --- a/mm/vmalloc.c
> > > +++ b/mm/vmalloc.c
> > > @@ -558,8 +558,10 @@ void vunmap_range(unsigned long addr, unsigned long 
> > > end)
> > >
> > >  static int vmap_pages_pte_range(pmd_t *pmd, unsigned long addr,
> > >               unsigned long end, pgprot_t prot, struct page **pages, int 
> > > *nr,
> > > -             pgtbl_mod_mask *mask)
> > > +             pgtbl_mod_mask *mask, unsigned int shift)
> > >  {
> > > +     unsigned long pfn, size;
> > > +     unsigned int steps;
> > >       int err = 0;
> > >       pte_t *pte;
> > >
> > > @@ -590,9 +592,10 @@ static int vmap_pages_pte_range(pmd_t *pmd, unsigned 
> > > long addr,
> > >                       break;
> > >               }
> > >
> > > -             set_pte_at(&init_mm, addr, pte, mk_pte(page, prot));
> > > -             (*nr)++;
> > > -     } while (pte++, addr += PAGE_SIZE, addr != end);
> > > +             pfn = page_to_pfn(page);
> > > +             size = vmap_set_ptes(pte, addr, end, pfn, prot, shift);
> > > +             steps = PFN_DOWN(size);
> > > +     } while (pte += steps, *nr += steps, addr += size, addr != end);
> > >
> > nr_mapped_pages?
> >
> 
> As noted in the patch 6 reply, I'll rename steps to nr_pages here as well.
> 
Thank you!

> > > +
> > > +                     if (vmap_try_huge_pmd(pmd, addr, next, phys_addr, 
> > > prot, shift)) {
> > > +                             *mask |= PGTBL_PMD_MODIFIED;
> > > +                             *nr += 1 << (PMD_SHIFT - PAGE_SHIFT);
> > >
> > *nr += 1 << (PMD_SHIFT - PAGE_SHIFT); --->  *nr += 1U << (PMD_SHIFT - 
> > PAGE_SHIFT);
> > as it used to be?
> >
> 
> Agreed, I'll use 1U.
> 
Thank you. With noted modifications:

Reviewed-by: Uladzislau Rezki (Sony) <[email protected]>

> > >
> > This is not about this patch but probably on that WARN_ON we should bail out
> > early.
> >
> 
> I'll send a separate cleanup patch changing it to:
> 
>         if (WARN_ON_ONCE(page_shift < PAGE_SHIFT))
>                 return -EINVAL;
> 
Sounds good.

--
Uladzislau Rezki

Reply via email to