Re: [PATCH 4.7 000/143] 4.7.3-stable review
From: Markus Trippelsdorf <hidden>
Date: 2016-09-05 17:46:40
Also in:
lkml
On 2016.09.05 at 18:42 +0200, Greg Kroah-Hartman wrote:
This is the start of the stable review cycle for the 4.7.3 release. There are 143 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know. Responses should be made by Wed Sep 7 16:44:10 UTC 2016. Anything received after that time might be too late.
As far as I can see this missing an rather important mm fix from Michal Hocko.
commit 6b4e3181d7bd5ca5ab6f45929e4a5ffa7ab4ab7f
Author: Michal Hocko [off-list ref]
Date: Thu Sep 1 16:14:41 2016 -0700
mm, oom: prevent premature OOM killer invocation for high order request
There have been several reports about pre-mature OOM killer invocation
in 4.7 kernel when order-2 allocation request (for the kernel stack)
invoked OOM killer even during basic workloads (light IO or even kernel
compile on some filesystems). In all reported cases the memory is
fragmented and there are no order-2+ pages available. There is usually
a large amount of slab memory (usually dentries/inodes) and further
debugging has shown that there are way too many unmovable blocks which
are skipped during the compaction. Multiple reporters have confirmed
that the current linux-next which includes [1] and [2] helped and OOMs
are not reproducible anymore.
A simpler fix for the late rc and stable is to simply ignore the
compaction feedback and retry as long as there is a reclaim progress and
we are not getting OOM for order-0 pages. We already do that for
CONFING_COMPACTION=n so let's reuse the same code when compaction is
enabled as well.
[1] http://lkml.kernel.org/r/20160810091226.6709-1-vbabka@suse.cz
[2] http://lkml.kernel.org/r/f7a9ea9d-bb88-bfd6-e340-3a933559305a@suse.cz
Fixes: 0a0337e0d1d1 ("mm, oom: rework oom detection")
Link: http://lkml.kernel.org/r/20160823074339.GB23577@dhcp22.suse.cz
Signed-off-by: Michal Hocko [off-list ref]
Tested-by: Olaf Hering [off-list ref]
Tested-by: Ralf-Peter Rohbeck [off-list ref]
Cc: Markus Trippelsdorf [off-list ref]
Cc: Arkadiusz Miskiewicz [off-list ref]
Cc: Ralf-Peter Rohbeck [off-list ref]
Cc: Jiri Slaby [off-list ref]
Cc: Vlastimil Babka [off-list ref]
Cc: Joonsoo Kim [off-list ref]
Cc: Tetsuo Handa [off-list ref]
Cc: David Rientjes [off-list ref]
Cc: [off-list ref] [4.7.x]
Signed-off-by: Andrew Morton [off-list ref]
Signed-off-by: Linus Torvalds [off-list ref]
--
Markus