As pointed out by Vlastimil, there is a redundant check in shrink_zones since commit "mm, vmscan: avoid passing in classzone_idx unnecessarily to compaction_ready". The zonelist iterator only returns zones that already meet the requirements of the allocation request.
This is a fix to the mmotm patch mm-vmscan-avoid-passing-in-classzone_idx-unnecessarily-to-compaction_ready.patch Signed-off-by: Mel Gorman <[email protected]> --- mm/vmscan.c | 1 - 1 file changed, 1 deletion(-) diff --git a/mm/vmscan.c b/mm/vmscan.c index 4fdb9e419588..c2ad4263f965 100644 --- a/mm/vmscan.c +++ b/mm/vmscan.c @@ -2606,7 +2606,6 @@ static void shrink_zones(struct zonelist *zonelist, struct scan_control *sc) */ if (IS_ENABLED(CONFIG_COMPACTION) && sc->order > PAGE_ALLOC_COSTLY_ORDER && - zonelist_zone_idx(z) <= sc->reclaim_idx && compaction_ready(zone, sc)) { sc->compaction_ready = true; continue; -- 2.6.4

