Re: [PATCH] mm: Speed up mremap on large regions

From: Kirill A. Shutemov
Date: Thu Oct 11 2018 - 04:11:21 EST


On Thu, Oct 11, 2018 at 08:14:19AM +0300, Kirill A. Shutemov wrote:
> On Wed, Oct 10, 2018 at 05:46:18PM -0700, Joel Fernandes wrote:
> > diff --git a/arch/powerpc/include/asm/book3s/64/pgalloc.h b/arch/powerpc/include/asm/book3s/64/pgalloc.h
> > index 391ed2c3b697..8a33f2044923 100644
> > --- a/arch/powerpc/include/asm/book3s/64/pgalloc.h
> > +++ b/arch/powerpc/include/asm/book3s/64/pgalloc.h
> > @@ -192,14 +192,12 @@ static inline pgtable_t pmd_pgtable(pmd_t pmd)
> > return (pgtable_t)pmd_page_vaddr(pmd);
> > }
> >
> > -static inline pte_t *pte_alloc_one_kernel(struct mm_struct *mm,
> > - unsigned long address)
> > +static inline pte_t *pte_alloc_one_kernel(struct mm_struct *mm)
> > {
> > return (pte_t *)pte_fragment_alloc(mm, address, 1);
> > }
>
> This is obviously broken.

I've checked pte_fragment_alloc() and it doesn't use the address too.
We need to modify it too.

--
Kirill A. Shutemov