[Devel] [PATCH 00/13 vz7] Port "Improve shrink_slab() scalability" patchset

Kirill Tkhai ktkhai at virtuozzo.com
Tue Aug 28 14:31:16 MSK 2018


This is backport of the patchset improving the performance
of overcommited containers with many memcgs and mounts.
The original set is in Linus' tree, and came into 4.19-rc1.

https://jira.sw.ru/browse/PSBM-88027
---

Kirill Tkhai (12):
      mm: assign id to every memcg-aware shrinker
      mm/memcontrol.c: move up for_each_mem_cgroup{, _tree} defines
      mm, memcg: assign memcg-aware shrinkers bitmap to memcg
      fs: propagate shrinker::id to list_lru
      mm/list_lru.c: add memcg argument to list_lru_from_kmem()
      mm/list_lru: pass dst_memcg argument to memcg_drain_list_lru_node()
      mm/list_lru.c: pass lru argument to memcg_drain_list_lru_node()
      mm/list_lru.c: set bit in memcg shrinker bitmap on first list_lru item appearance
      mm/memcontrol.c: export mem_cgroup_is_root()
      mm/vmscan.c: iterate only over charged shrinkers during memcg shrink_slab()
      mm: add SHRINK_EMPTY shrinker methods return value
      mm/vmscan.c: clear shrinker bit if there are no objects related to memcg

Vladimir Davydov (1):
      mm/vmscan.c: generalize shrink_slab() calls in shrink_node()


 fs/super.c                 |    6 +
 include/linux/list_lru.h   |    3 -
 include/linux/memcontrol.h |   28 ++++++
 include/linux/shrinker.h   |   12 ++-
 mm/list_lru.c              |   68 ++++++++++++----
 mm/memcontrol.c            |  190 +++++++++++++++++++++++++++++++++++++++-----
 mm/vmscan.c                |  168 ++++++++++++++++++++++++++++++++++++---
 7 files changed, 422 insertions(+), 53 deletions(-)

--
Signed-off-by: Kirill Tkhai <ktkhai at virtuozzo.com>


More information about the Devel mailing list