diff options
author | Johannes Weiner <hannes@cmpxchg.org> | 2014-08-06 19:06:10 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-08-06 21:01:18 -0400 |
commit | 8d07429319b2836604061f48f7e3dfe78acc060c (patch) | |
tree | ac2d767e082d261d2343aa1db80ed9e3fecf4e8c /mm | |
parent | 1a4dc5bc7cb5659a8004d105afeb0571126f8f56 (diff) |
mm: vmscan: remove remains of kswapd-managed zone->all_unreclaimable
shrink_zones() has a special branch to skip the all_unreclaimable()
check during hibernation, because a frozen kswapd can't mark a zone
unreclaimable.
But ever since commit 6e543d5780e3 ("mm: vmscan: fix
do_try_to_free_pages() livelock"), determining a zone to be
unreclaimable is done by directly looking at its scan history and no
longer relies on kswapd setting the per-zone flag.
Remove this branch and let shrink_zones() check the reclaimability of
the target zones regardless of hibernation state.
Signed-off-by: Johannes Weiner <hannes@cmpxchg.org>
Acked-by: Mel Gorman <mgorman@suse.de>
Cc: Rik van Riel <riel@redhat.com>
Acked-by: Michal Hocko <mhocko@suse.cz>
Cc: Vlastimil Babka <vbabka@suse.cz>
Acked-by: Minchan Kim <minchan@kernel.org>
Cc: KOSAKI Motohiro <Kosaki.motohiro@jp.fujitsu.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'mm')
-rw-r--r-- | mm/vmscan.c | 8 |
1 files changed, 0 insertions, 8 deletions
diff --git a/mm/vmscan.c b/mm/vmscan.c index 0f16ffe8eb67..19b5b8016209 100644 --- a/mm/vmscan.c +++ b/mm/vmscan.c | |||
@@ -2534,14 +2534,6 @@ out: | |||
2534 | if (sc->nr_reclaimed) | 2534 | if (sc->nr_reclaimed) |
2535 | return sc->nr_reclaimed; | 2535 | return sc->nr_reclaimed; |
2536 | 2536 | ||
2537 | /* | ||
2538 | * As hibernation is going on, kswapd is freezed so that it can't mark | ||
2539 | * the zone into all_unreclaimable. Thus bypassing all_unreclaimable | ||
2540 | * check. | ||
2541 | */ | ||
2542 | if (oom_killer_disabled) | ||
2543 | return 0; | ||
2544 | |||
2545 | /* Aborted reclaim to try compaction? don't OOM, then */ | 2537 | /* Aborted reclaim to try compaction? don't OOM, then */ |
2546 | if (aborted_reclaim) | 2538 | if (aborted_reclaim) |
2547 | return 1; | 2539 | return 1; |