Re: [PATCH] mm: skip current when memcg reclaim

From: Andrew Morton
Date: Fri Oct 15 2021 - 16:00:39 EST


On Fri, 15 Oct 2021 14:15:29 +0800 Huangzhaoyang <huangzhaoyang@xxxxxxxxx> wrote:

> 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.

"None" -> "node", I assume?

> --- 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
> + */

The comment explains what the code is doing, but the code itself
already does this. Please can we have a comment that explains *why*
the code is doing this?


> + if (get_mem_cgroup_from_mm(current->mm) == memcg)
> + continue;
> memcg_memory_event(memcg, MEMCG_LOW);
> }