From: Zhaoyang Huang <zhaoyang.huang@xxxxxxxxxx> Sibling thread of the same process could refault the reclaimed pages in the same time, which would be typical in None global reclaim and introduce thrashing. --- mm/vmscan.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/mm/vmscan.c b/mm/vmscan.c index 5199b96..ebbdc37 100644 --- a/mm/vmscan.c +++ b/mm/vmscan.c @@ -2841,6 +2841,11 @@ static void shrink_node_memcgs(pg_data_t *pgdat, struct scan_control *sc) sc->memcg_low_skipped = 1; continue; } + /* + * Don't bother current when its memcg is below low + */ + if (get_mem_cgroup_from_mm(current->mm) == memcg) + continue; memcg_memory_event(memcg, MEMCG_LOW); } -- 1.9.1