This is a tiny implementation of cgroup-aware OOM killer, which adds an ability to kill a cgroup as a single unit and so guarantee the integrity of the workload. Although it has only a limited functionality in comparison to what now resides in the mm tree (it doesn't change the victim task selection algorithm, doesn't look at memory stas on cgroup level, etc), it's also much simpler and more straightforward. So, hopefully, we can avoid having long debates here, as we had with the full implementation. As it doesn't prevent any futher development, and implements an useful and complete feature, it looks as a sane way forward. v2->v1: - added dmesg message about killing all tasks in cgroup - removed an unnecessary check for memcg being NULL pointer - adjusted docs and commit message - rebased to linus/master -- This patchset is against Linus's tree to avoid conflicts with the cgroup-aware OOM killer patchset in the mm tree. It's intended to replace it. Two first patches are already in the mm tree. The first one ("mm: introduce mem_cgroup_put() helper") is totally fine. Commit message of the second one has to be changed to reflect that it's not a part of the old patchset anymore. Roman Gushchin (3): mm: introduce mem_cgroup_put() helper mm, oom: refactor oom_kill_process() mm, oom: introduce memory.oom.group Documentation/admin-guide/cgroup-v2.rst | 18 ++++ include/linux/memcontrol.h | 27 ++++++ mm/memcontrol.c | 93 +++++++++++++++++++ mm/oom_kill.c | 153 ++++++++++++++++++++------------ 4 files changed, 233 insertions(+), 58 deletions(-) -- 2.14.4