Re: [PATCH v3 3/4] mm: try to exhaust highatomic reserve before the OOM

From: Minchan Kim
Date: Wed Oct 12 2016 - 19:39:45 EST

Hi Michal,

On Wed, Oct 12, 2016 at 10:34:50AM +0200, Michal Hocko wrote:
> Looks much better. Thanks! I am wondering whether we want to have this
> marked for stable. The patch is quite non-intrusive and fires only when
> we are really OOM. It is definitely better to try harder than go and
> disrupt the system by the OOM killer. So I would add
> Fixes: 0aaa29a56e4f ("mm, page_alloc: reserve pageblocks for high-order atomic allocations on demand")
> Cc: stable # 4.4+

Thanks for the information.

> The backport will look slightly different for kernels prior 4.6 because
> we do not have should_reclaim_retry yet but the check might hook right
> before __alloc_pages_may_oom.

As I just got one report and I didn't see similar problem in LKML
recently, I didn't mark it to the stable given that patchset size
in v1. However, with review, it becomes simple(Thanks, Michal and
Vlastimil) and I should admit my ladar is too limited so if you think
it's worth, I don't mind.

For the stable, {3,4}/4 are must but once we decide, I want to backport
all patches {1-4}/4 because without {1,2}, nr_reserved_highatomic mismatch
can happen so that unreserve logic doesn't work until force logic is
triggered when no_progress_loops is greater than MAX_RECLAIM_RETRIES.
It happend very easily in my test.
Withtout {1,2}, it works but looks no-good for me.

> --
> Michal Hocko
> SUSE Labs