[PATCHv2 0/8] thp/khugepaged improvements and CoW semantics

From: Kirill A. Shutemov
Date: Fri Apr 03 2020 - 07:30:27 EST


The patchset adds khugepaged selftest (anon-THP only for now), expands
cases khugepaged can handle and switches anon-THP copy-on-write handling
to 4k.

Please review and consider applying.

v2:
- Fix race in compound page handling;
- Add one more test-case for compound page case;
- Rework LRU add cache draining;
- Typos;

Kirill A. Shutemov (8):
khugepaged: Add self test
khugepaged: Do not stop collapse if less than half PTEs are referenced
khugepaged: Drain all LRU caches before scanning pages
khugepaged: Drain LRU add pagevec after swapin
khugepaged: Allow to callapse a page shared across fork
khugepaged: Allow to collapse PTE-mapped compound pages
thp: Change CoW semantics for anon-THP
khugepaged: Introduce 'max_ptes_shared' tunable

Documentation/admin-guide/mm/transhuge.rst | 7 +
include/trace/events/huge_memory.h | 3 +-
mm/huge_memory.c | 249 +-----
mm/khugepaged.c | 184 +++-
tools/testing/selftests/vm/Makefile | 1 +
tools/testing/selftests/vm/khugepaged.c | 982 +++++++++++++++++++++
6 files changed, 1153 insertions(+), 273 deletions(-)
create mode 100644 tools/testing/selftests/vm/khugepaged.c

--
2.26.0