All of lore.kernel.org
 help / color / mirror / Atom feed
From: Roman Gushchin <guro@fb.com>
To: linux-mm@kvack.org
Cc: Roman Gushchin <guro@fb.com>
Subject: [v4 0/4] cgroup-aware OOM killer
Date: Wed, 26 Jul 2017 14:27:14 +0100	[thread overview]
Message-ID: <20170726132718.14806-1-guro@fb.com> (raw)

This patchset makes the OOM killer cgroup-aware.

v4:
  - Reworked per-cgroup oom_score_adj into oom_priority
    (based on ideas by David Rientjes)
  - Tasks with oom_score_adj -1000 are never selected if
    oom_kill_all_tasks is not set
  - Memcg victim selection code is reworked, and
    synchronization is based on finding tasks with OOM victim marker,
    rather then on global counter
  - Debug output is dropped
  - Refactored TIF_MEMDIE usage

v3:
  - Merged commits 1-4 into 6
  - Separated oom_score_adj logic and debug output into separate commits
  - Fixed swap accounting

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

v1:
  https://lkml.org/lkml/2017/5/18/969


Roman Gushchin (4):
  mm, oom: refactor the TIF_MEMDIE usage
  mm, oom: cgroup-aware OOM killer
  mm, oom: introduce oom_priority for memory cgroups
  mm, oom, docs: describe the cgroup-aware OOM killer

 Documentation/cgroup-v2.txt |  62 +++++++++++
 include/linux/memcontrol.h  |  26 +++++
 include/linux/oom.h         |   3 +
 kernel/exit.c               |   2 +-
 mm/memcontrol.c             | 261 +++++++++++++++++++++++++++++++++++++++++++-
 mm/oom_kill.c               | 202 +++++++++++++++++++++++-----------
 6 files changed, 492 insertions(+), 64 deletions(-)

-- 
2.13.3

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

             reply	other threads:[~2017-07-26 13:27 UTC|newest]

Thread overview: 55+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-07-26 13:27 Roman Gushchin [this message]
2017-07-26 13:27 ` [v4 1/4] mm, oom: refactor the TIF_MEMDIE usage Roman Gushchin
2017-07-26 13:27   ` Roman Gushchin
2017-07-26 13:56   ` Michal Hocko
2017-07-26 13:56     ` Michal Hocko
2017-07-26 14:06     ` Roman Gushchin
2017-07-26 14:06       ` Roman Gushchin
2017-07-26 14:24       ` Michal Hocko
2017-07-26 14:24         ` Michal Hocko
2017-07-26 14:44         ` Michal Hocko
2017-07-26 14:44           ` Michal Hocko
     [not found]           ` <20170726144408.GU2981-2MMpYkNvuYDjFM9bn6wA6Q@public.gmane.org>
2017-07-26 14:50             ` Roman Gushchin
2017-07-26 14:50               ` Roman Gushchin
2017-07-26 14:50               ` Roman Gushchin
2017-07-26 13:27 ` [v4 2/4] mm, oom: cgroup-aware OOM killer Roman Gushchin
2017-07-26 13:27   ` Roman Gushchin
     [not found]   ` <20170726132718.14806-3-guro-b10kYP2dOMg@public.gmane.org>
2017-07-27 21:41     ` kbuild test robot
2017-07-27 21:41       ` kbuild test robot
2017-07-27 21:41       ` kbuild test robot
2017-08-01 14:54   ` Michal Hocko
2017-08-01 14:54     ` Michal Hocko
2017-08-01 15:25     ` Roman Gushchin
2017-08-01 15:25       ` Roman Gushchin
2017-08-01 17:03       ` Michal Hocko
2017-08-01 17:03         ` Michal Hocko
2017-08-01 18:13         ` Roman Gushchin
2017-08-01 18:13           ` Roman Gushchin
2017-08-01 18:13           ` Roman Gushchin
2017-08-02  7:29           ` Michal Hocko
2017-08-02  7:29             ` Michal Hocko
2017-08-03 12:47             ` Roman Gushchin
2017-08-03 12:47               ` Roman Gushchin
     [not found]               ` <20170803124751.GA24563-2xczL/1GIl5a1dPMsufgnw2O0Ztt9esIQQ4Iyu8u01E@public.gmane.org>
2017-08-03 13:01                 ` Michal Hocko
2017-08-03 13:01                   ` Michal Hocko
2017-08-03 13:01                   ` Michal Hocko
2017-08-08 23:06       ` David Rientjes
2017-08-08 23:06         ` David Rientjes
     [not found]         ` <alpine.DEB.2.10.1708081559001.54505-X6Q0R45D7oAcqpCFd4KODRPsWskHk0ljAL8bYrjMMd8@public.gmane.org>
2017-08-14 12:03           ` Roman Gushchin
2017-08-14 12:03             ` Roman Gushchin
2017-08-14 12:03             ` Roman Gushchin
2017-07-26 13:27 ` [v4 3/4] mm, oom: introduce oom_priority for memory cgroups Roman Gushchin
2017-07-26 13:27   ` Roman Gushchin
     [not found]   ` <20170726132718.14806-4-guro-b10kYP2dOMg@public.gmane.org>
2017-08-08 23:14     ` David Rientjes
2017-08-08 23:14       ` David Rientjes
2017-08-08 23:14       ` David Rientjes
2017-08-14 12:39       ` Roman Gushchin
2017-08-14 12:39         ` Roman Gushchin
2017-07-26 13:27 ` [v4 4/4] mm, oom, docs: describe the cgroup-aware OOM killer Roman Gushchin
2017-07-26 13:27   ` Roman Gushchin
     [not found]   ` <20170726132718.14806-5-guro-b10kYP2dOMg@public.gmane.org>
2017-08-08 23:24     ` David Rientjes
2017-08-08 23:24       ` David Rientjes
2017-08-08 23:24       ` David Rientjes
2017-08-14 12:28       ` Roman Gushchin
2017-08-14 12:28         ` Roman Gushchin
2017-08-14 12:28         ` Roman Gushchin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20170726132718.14806-1-guro@fb.com \
    --to=guro@fb.com \
    --cc=linux-mm@kvack.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.