lkml.org 
[lkml]   [2022]   [Nov]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
Subject[PATCH 0/3] mm,huge,rmap: unify and speed up compound mapcounts
I had intended to send just a self-explanatory 1/2 and 2/2 against
6.1-rc3 on Monday; but checked for clashes with linux-next (mainly
mm-unstable) just before sending, and fuzz in mm_types.h revealed
not just a clash with Sidhartha's series, but also that I had missed
the hugetlb usage of tail page->private, problematic for me on 32-bit.

So that series was slightly broken; and although it would probably
have been easy to fix with a "SUBPAGE_INDEX_SUBPOOL = 2" patch,
that would not have moved us forward very well. So this series is
against next-20221102 (and hopefully later nexts), with a preparatory
1/3 to rejig the hugetlb tail private usage, on top of Sidhartha's.

1/3 mm,hugetlb: use folio fields in second tail page
2/3 mm,thp,rmap: simplify compound page mapcount handling
3/3 mm,thp,rmap: lock_compound_mapcounts() on THP mapcounts

2/3 and 3/3 can almost be applied cleanly to 6.1-rc3 (okay when
you are on 64-bit): just a couple of easily resolved rejects.

Documentation/mm/transhuge.rst | 34 +---
include/linux/hugetlb.h | 23 +--
include/linux/hugetlb_cgroup.h | 31 +--
include/linux/mm.h | 85 ++++++---
include/linux/mm_types.h | 91 ++++++---
include/linux/page-flags.h | 21 --
include/linux/rmap.h | 12 +-
mm/Kconfig | 2 +-
mm/debug.c | 5 +-
mm/folio-compat.c | 6 -
mm/huge_memory.c | 37 +---
mm/hugetlb.c | 2 +
mm/khugepaged.c | 11 +-
mm/memory-failure.c | 5 +-
mm/page_alloc.c | 27 +--
mm/rmap.c | 359 ++++++++++++++++++++---------------
mm/util.c | 79 --------
17 files changed, 401 insertions(+), 429 deletions(-)

Hugh

\
 
 \ /
  Last update: 2022-11-03 02:45    [W:0.581 / U:0.500 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site