Re: [PATCH memcg] memcg: prohibit unconditional exceeding the limit of dying tasks

From: Tetsuo Handa
Date: Fri Sep 10 2021 - 09:05:19 EST


On 2021/09/10 21:39, Vasily Averin wrote:
> The kernel currently allows dying tasks to exceed the memcg limits.
> The allocation is expected to be the last one and the occupied memory
> will be freed soon.
> This is not always true because it can be part of the huge vmalloc
> allocation. Allowed once, they will repeat over and over again.
> Moreover lifetime of the allocated object can differ from
> In addition the lifetime of the dying task.

Can't we add fatal_signal_pending(current) test to vmalloc() loop?

> Multiple such allocations running concurrently can not only overuse
> the memcg limit, but can lead to a global out of memory and,
> in the worst case, cause the host to panic.
>
> Signed-off-by: Vasily Averin <vvs@xxxxxxxxxxxxx>