Re: [PATCH 09/31] mm, vmscan: by default have direct reclaim only shrink once per node

From: Mel Gorman
Date: Thu Jul 07 2016 - 06:27:36 EST


On Thu, Jul 07, 2016 at 10:43:22AM +0900, Joonsoo Kim wrote:
> > @@ -2600,6 +2593,16 @@ static void shrink_zones(struct zonelist *zonelist, struct scan_control *sc)
> > classzone_idx--;
> >
> > /*
> > + * Shrink each node in the zonelist once. If the zonelist is
> > + * ordered by zone (not the default) then a node may be
> > + * shrunk multiple times but in that case the user prefers
> > + * lower zones being preserved
> > + */
> > + if (zone->zone_pgdat == last_pgdat)
> > + continue;
> > + last_pgdat = zone->zone_pgdat;
> > +
> > + /*
>
> After this change, compaction_ready() which uses zone information
> would be called with highest zone in node. So, if some lower zone in
> that node is compaction-ready, we cannot stop the reclaim.
>

Yes. It only impacts direct reclaim but potentially it's an issue. I'll
fix it.

--
Mel Gorman
SUSE Labs