lkml.org 
[lkml]   [2016]   [Jul]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 06/34] mm, vmscan: have kswapd only scan based on the highest requested zone
On Tue, Jul 12, 2016 at 10:05:04AM -0400, Johannes Weiner wrote:
> On Fri, Jul 08, 2016 at 10:34:42AM +0100, Mel Gorman wrote:
> > kswapd checks all eligible zones to see if they need balancing even if it
> > was woken for a lower zone. This made sense when we reclaimed on a
> > per-zone basis because we wanted to shrink zones fairly so avoid
> > age-inversion problems. Ideally this is completely unnecessary when
> > reclaiming on a per-node basis. In theory, there may still be anomalies
> > when all requests are for lower zones and very old pages are preserved in
> > higher zones but this should be the exceptional case.
> >
> > Signed-off-by: Mel Gorman <mgorman@techsingularity.net>
> > Acked-by: Vlastimil Babka <vbabka@suse.cz>
>
> Acked-by: Johannes Weiner <hannes@cmpxchg.org>
>
> I wasn't quite sure at first what the rationale is for this patch,
> since it probably won't make much difference in pratice.

Possibly not, it depends on how much embedded 32-bit platforms use features
like zswap. What I wanted to avoid was a lowmem allocation for zswap
excessively reclaiming highmem putting even further pressure on zswap if
the pages are anonymous.

> But I do
> agree that the code is cleaner to have kswapd check exactly what it
> was asked to check, rather than some do-the-"right"-thing magic.
>

But this is a justification on its own. I encountered an astonishing number
of magic number handling that just happened to mostly work. I wanted to
iron them out as much as possible.

> A hypothetical onslaught of low-zone allocations will wreak havoc to
> the page age in higher zones anyway, right? So I don't think that case
> matters all that much.

Possibly not, but it was straight-forward to mitigate the damage without
too many side-effects.

--
Mel Gorman
SUSE Labs

\
 
 \ /
  Last update: 2016-07-13 11:21    [W:0.077 / U:32.192 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site