[PATCH 0/9] mm: improve OOM mechanism v2

From: Johannes Weiner
Date: Mon Apr 27 2015 - 15:08:03 EST


There is a possible deadlock scenario between the page allocator and
the OOM killer. Most allocations currently retry forever inside the
page allocator, but when the OOM killer is invoked the chosen victim
might try taking locks held by the allocating task. This series, on
top of many cleanups in the allocator & OOM killer, grants such OOM-
killing allocations access to the system's memory reserves in order
for them to make progress without relying on their own kill to exit.

Changes since v1:
- drop GFP_NOFS deadlock fix (Dave Chinner)
- drop low-order deadlock fix (Michal Hocko)
- fix missing oom_lock in sysrq+f (Michal Hocko)
- fix PAGE_ALLOC_COSTLY retry condition (Michal Hocko)
- ALLOC_NO_WATERMARKS only for OOM victims, not all killed tasks (Tetsuo Handa)
- bump OOM wait timeout from 1s to 5s (Vlastimil Babka & Michal Hocko)

drivers/staging/android/lowmemorykiller.c | 2 +-
drivers/tty/sysrq.c | 2 +
include/linux/oom.h | 12 +-
kernel/exit.c | 2 +-
mm/memcontrol.c | 20 ++--
mm/oom_kill.c | 167 +++++++---------------------
mm/page_alloc.c | 161 ++++++++++++---------------
7 files changed, 137 insertions(+), 229 deletions(-)

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/