This patchset makes the OOM killer cgroup-aware. Patch 1 causes out_of_memory() look at the oom_victim counter to decide if a new victim is required. Patch 2 is main patch which implements cgroup-aware OOM killer. Patch 3 adds some debug output, which can be refined later. Patch 4 introduces per-cgroup oom_score_adj knob. Patch 5 fixes a problem with too many processes receiving an access to the memory reserves. Patch 6 is docs update. v1: https://lkml.org/lkml/2017/5/18/969 v2: - Reworked victim selection based on feedback from Michal Hocko, Vladimir Davydov and Johannes Weiner - "Kill all tasks" is now an opt-in option, by default only one process will be killed - Added per-cgroup oom_score_adj - Refined oom score calculations, suggested by Vladimir Davydov - Converted to a patchset v3: - Fixed swap accounting - Switched to use oom_victims counter to prevent unnecessary kills - TIF_MEMDIE is set only when necessary - Moved all oom victim killing code into oom_kill.c - Merged commits 1-4 into 6 - Separated oom_score_adj logic into a separate commit 4 - Separated debug output into a separate commit 3 Roman Gushchin (6): mm, oom: use oom_victims counter to synchronize oom victim selection mm, oom: cgroup-aware OOM killer mm, oom: cgroup-aware OOM killer debug info mm, oom: introduce oom_score_adj for memory cgroups mm, oom: don't mark all oom victims tasks with TIF_MEMDIE mm,oom,docs: describe the cgroup-aware OOM killer Documentation/cgroup-v2.txt | 44 ++++++++++ include/linux/memcontrol.h | 23 +++++ include/linux/oom.h | 3 + kernel/exit.c | 2 +- mm/memcontrol.c | 209 ++++++++++++++++++++++++++++++++++++++++++++ mm/oom_kill.c | 202 ++++++++++++++++++++++++++++-------------- 6 files changed, 416 insertions(+), 67 deletions(-) -- 2.7.4 -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>