Re: [PATCHv3, RESEND 6/8] khugepaged: Allow to collapse PTE-mapped compound pages

From: Andrew Morton
Date: Wed Apr 15 2020 - 18:53:19 EST


On Thu, 16 Apr 2020 00:52:05 +0300 "Kirill A. Shutemov" <kirill@xxxxxxxxxxxxx> wrote:

> On Wed, Apr 15, 2020 at 02:44:26PM -0700, Andrew Morton wrote:
> > On Mon, 13 Apr 2020 15:52:18 +0300 "Kirill A. Shutemov" <kirill.shutemov@xxxxxxxxxxxxxxx> wrote:
> >
> > > We can collapse PTE-mapped compound pages. We only need to avoid
> > > handling them more than once: lock/unlock page only once if it's present
> > > in the PMD range multiple times as it handled on compound level. The
> > > same goes for LRU isolation and putback.
> > >
> > > ...
> > >
> > > --- a/mm/khugepaged.c
> > > +++ b/mm/khugepaged.c
> > > @@ -515,17 +515,30 @@ void __khugepaged_exit(struct mm_struct *mm)
> > >
> > > static void release_pte_page(struct page *page)
> > > {
> > > - dec_node_page_state(page, NR_ISOLATED_ANON + page_is_file_cache(page));
> >
> > I have
> >
> > dec_node_page_state(page, NR_ISOLATED_ANON + page_is_file_lru(page));
> >
> > here. Is there some prerequisite which I wasn't able to find?
>
> The patchset is on top of v5.6. It has been changed since. See
> 9de4f22a60f7 ("mm: code cleanup for MADV_FREE").
>
> Look like a trivial fixup is required.

[7/8] makes a big mess. Can we please have a v4?