v2 -> v3
- edit commit message
- adjust defconfig
v1 -> v2
- make independent patches to export symbols we need
- make independent patches for etmem scan and swap config
- fix indentation and code style problems
Yuchen Tang (10):
etmem: a tiered memory manager
etmem: etmem scan, the page hotness tracker
mm: Export symbol __pud_trans_huge_lock
mm: Export symbol walk_page_range
etmem: add etmem scan feature
mm: Export symbol reclaim_pages
etmem: add etmem swap feature
etmem: add original kernel swap enabled options
etmem: add swapcache reclaim to etmem
etmem: enable etmem configurations
arch/arm64/configs/openeuler_defconfig | 3 +
arch/x86/configs/openeuler_defconfig | 3 +
fs/proc/Makefile | 3 +
fs/proc/base.c | 8 +
fs/proc/etmem_proc.c | 216 ++++
fs/proc/etmem_scan.c | 1383 ++++++++++++++++++++++++
fs/proc/etmem_scan.h | 149 +++
fs/proc/etmem_swap.c | 283 +++++
fs/proc/internal.h | 4 +
include/linux/etmem.h | 75 ++
include/linux/mm.h | 4 +
include/linux/mm_types.h | 5 +
include/linux/swap.h | 1 +
include/uapi/asm-generic/mman-common.h | 4 +
mm/Kconfig | 33 +
mm/Makefile | 1 +
mm/etmem.c | 384 +++++++
mm/huge_memory.c | 1 +
mm/internal.h | 1 -
mm/madvise.c | 16 +
mm/pagewalk.c | 1 +
mm/swap_state.c | 4 +
mm/vmscan.c | 16 +
virt/kvm/kvm_main.c | 8 +
24 files changed, 2605 insertions(+), 1 deletion(-)
create mode 100644 fs/proc/etmem_proc.c
create mode 100644 fs/proc/etmem_scan.c
create mode 100644 fs/proc/etmem_scan.h
create mode 100644 fs/proc/etmem_swap.c
create mode 100644 include/linux/etmem.h
create mode 100644 mm/etmem.c
--
2.33.0