On Wed, Apr 15, 2020 at 03:52:59PM -0700, Andrew Morton wrote: > 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? Sure. Give me a day. -- Kirill A. Shutemov