Re: [RFC PATCH] mm/oom_kill: allow oom kill allocating task for non-global case

From: Waiman Long
Date: Mon Jun 07 2021 - 15:26:07 EST


On 6/7/21 3:01 PM, Michal Hocko wrote:
On Mon 07-06-21 17:31:03, Aaron Tomlin wrote:
At the present time, in the context of memcg OOM, even when
sysctl_oom_kill_allocating_task is enabled/or set, the "allocating"
task cannot be selected, as a target for the OOM killer.

This patch removes the restriction entirely.
This is a global oom policy not a memcg specific one so a historical
behavior would change. So I do not think we can change that. The policy
can be implemented on the memcg level but this would require a much more
detailed explanation of the usecase and the semantic (e.g. wrt.
hierarchical behavior etc).

Maybe we can extend the meaning of oom_kill_allocating_task such that memcg OOM killing of allocating task is only enabled when bit 1 is set. So if an existing application just set oom_kill_allocating_task to 1, it will not be impacted.

Cheers,
Longman