[PATCH v2 0/2] mm, oom: do not grant oom victims full memory reserves access

From: Michal Hocko
Date: Thu Aug 10 2017 - 03:50:34 EST


Hi,
this is a second version of the series previously posted [1]. Tetsuo
has noticed a bug I've introduced during the rebase and also pointed
out reserves access changes on nommu arches which I have addressed
as well. Mel had some more feedback which is hopefully addressed as
well. There were no further comments so I am reposting and asking for
inclusion.

this is a part of a larger series I posted back in Oct last year [2]. I
have dropped patch 3 because it was incorrect and patch 4 is not
applicable without it.

The primary reason to apply patch 1 is to remove a risk of the complete
memory depletion by oom victims. While this is a theoretical risk right
now there is a demand for memcg aware oom killer which might kill all
processes inside a memcg which can be a lot of tasks. That would make
the risk quite real.

This issue is addressed by limiting access to memory reserves. We no
longer use TIF_MEMDIE to grant the access and use tsk_is_oom_victim
instead. See Patch 1 for more details. Patch 2 is a trivial follow up
cleanup.

I would still like to get rid of TIF_MEMDIE completely but I do not have
time to do it now and it is not a pressing issue.

[1] http://lkml.kernel.org/r/20170727090357.3205-1-mhocko@xxxxxxxxxx
[2] http://lkml.kernel.org/r/20161004090009.7974-1-mhocko@xxxxxxxxxx