Re: [mm-unstable v5 PATCH 0/7] Cleanup transhuge_xxx helpers

From: Yang Shi
Date: Fri Jun 17 2022 - 13:54:50 EST


On Thu, Jun 16, 2022 at 4:08 PM Zach O'Keefe <zokeefe@xxxxxxxxxx> wrote:
>
> On 16 Jun 10:48, Yang Shi wrote:
> >
> > v5: * Removed transparent_hugepage_active() for !THP, per Zach.
> > Patch 4/7 and 5/7 were updated accordingly.
> > * Collected review tags.
> > v4: * Consolidated the transhuge_vma_size_ok() helper proposed in the
> > earlier versions into transhuge_vma_suitable(), per Zach.
> > * Fixed the regression introduced by patch 3/7, per Zach and Miaohe.
> > * Reworded the comment for transhuge_vma_suitable(), per Zach.
> > * Removed khugepaged_enter() per Miaohe.
> > * More comments for hugepage_vma_check(), per Zach.
> > * Squashed patch 4/7 (mm: khugepaged: use transhuge_vma_suitable replace open-code)
> > in the earlier version into patch 2/7 of this version.
> > * Minor correction to the doc about THPeligible (patch 7/7), so the
> > total number of patches is kept 7.
> > v3: * Fixed the comment from Willy
> > v2: * Rebased to the latest mm-unstable
> > * Fixed potential regression for smaps's THPeligible
> >
> > This series is the follow-up of the discussion about cleaning up transhuge_xxx
> > helpers at https://lore.kernel.org/linux-mm/627a71f8-e879-69a5-ceb3-fc8d29d2f7f1@xxxxxxx/.
> >
> > THP has a bunch of helpers that do VMA sanity check for different paths, they
> > do the similar checks for the most callsites and have a lot duplicate codes.
> > And it is confusing what helpers should be used at what conditions.
> >
> > This series reorganized and cleaned up the code so that we could consolidate
> > all the checks into hugepage_vma_check().
> >
> > The transhuge_vma_enabled(), transparent_hugepage_active() and
> > __transparent_hugepage_enabled() are killed by this series.
> >
> >
> > Yang Shi (7):
> > mm: khugepaged: check THP flag in hugepage_vma_check()
> > mm: thp: consolidate vma size check to transhuge_vma_suitable
> > mm: khugepaged: better comments for anon vma check in hugepage_vma_revalidate
> > mm: thp: kill transparent_hugepage_active()
> > mm: thp: kill __transhuge_page_enabled()
> > mm: khugepaged: reorg some khugepaged helpers
> > doc: proc: fix the description to THPeligible
> >
> > Documentation/filesystems/proc.rst | 4 ++-
> > fs/proc/task_mmu.c | 2 +-
> > include/linux/huge_mm.h | 80 +++++++++++++++++++----------------------------------------
> > include/linux/khugepaged.h | 30 ----------------------
> > mm/huge_memory.c | 81 +++++++++++++++++++++++++++++++++++++++++++++++++++--------
> > mm/khugepaged.c | 84 +++++++++++++++++++-------------------------------------------
> > mm/memory.c | 7 ++++--
> > 7 files changed, 130 insertions(+), 158 deletions(-)
> >
>
> Series LGTM. Thanks for these cleanups, Yang!

Thank you so much for reviewing the patches.

>
> Best,
> Zach