Re: [PATCH 07/34] mm, vmscan: make kswapd reclaim in terms of nodes
From: Mel Gorman <hidden>
Date: 2016-08-30 12:07:36
Also in:
linux-mm, lkml
On Mon, Aug 29, 2016 at 03:08:44PM +0530, Srikar Dronamraju wrote:
quoted
Patch "mm: vmscan: Begin reclaiming pages on a per-node basis" started thinking of reclaim in terms of nodes but kswapd is still zone-centric. This patch gets rid of many of the node-based versus zone-based decisions. o A node is considered balanced when any eligible lower zone is balanced. This eliminates one class of age-inversion problem because we avoid reclaiming a newer page just because it's in the wrong zone o pgdat_balanced disappears because we now only care about one zone being balanced. o Some anomalies related to writeback and congestion tracking being based on zones disappear. o kswapd no longer has to take care to reclaim zones in the reverse order that the page allocator uses. o Most importantly of all, reclaim from node 0 with multiple zones will have similar aging and reclaiming characteristics as every other node. Signed-off-by: Mel Gorman <redacted> Acked-by: Johannes Weiner <hannes@cmpxchg.org> Acked-by: Vlastimil Babka <redacted>This patch seems to hurt FA_DUMP functionality. This behaviour is not seen on v4.7 but only after this patch. So when a kernel on a multinode machine with memblock_reserve() such that most of the nodes have zero available memory, kswapd seems to be consuming 100% of the time.
Why is FA_DUMP specifically the trigger? If the nodes have zero available memory then is the zone_populated() check failing when FA_DUMP is enabled? If so, that would both allow kswapd to wake and stay awake. -- Mel Gorman SUSE Labs