This series patches add swap control for memory cgroup. Patch[1] add page type in memory.reclaim interface to support reclaim anon pages. Patch[3] add memory.force_swapin interface to support swap back pages proactively. Patch[4-6] add memory.swapfile interface to limit available swap device for memory cgroup. Patch[7] add memory.swap.max interface to limit usage of swap for memory cgroup.
Jinjiang Tu (1): memcg: make sysctl registration more extensible
Liu Shixin (7): memcg: add page type to memory.reclaim interface memcg: introduce memcg swap qos feature memcg: introduce per-memcg swapin interface memcg: add restrict to swap to cgroup1 mm/swapfile: introduce per-memcg swapfile control mm: swap_slots: add per-type slot cache config: enable memcg swap qos for x86_64 and arm64 by default
zhaoxiaoqiang11 (1): memcg/swap: add ability to disable memcg swap
.../admin-guide/cgroup-v1/memory.rst | 3 + Documentation/admin-guide/cgroup-v2.rst | 10 +- arch/arm64/configs/openeuler_defconfig | 1 + arch/x86/configs/openeuler_defconfig | 1 + include/linux/memcontrol.h | 35 ++ include/linux/mm.h | 4 + include/linux/swap.h | 12 +- include/linux/swap_slots.h | 2 +- init/Kconfig | 9 + mm/madvise.c | 31 +- mm/memcontrol.c | 497 +++++++++++++++++- mm/swap_slots.c | 151 +++++- mm/swapfile.c | 97 +++- mm/vmscan.c | 9 + 14 files changed, 813 insertions(+), 49 deletions(-)