Re: [v2 PATCH 7/9] mm: vmscan: check if the demote target node is contended or not

From: Dave Hansen
Date: Thu Apr 11 2019 - 12:06:03 EST


On 4/10/19 8:56 PM, Yang Shi wrote:
> When demoting to PMEM node, the target node may have memory pressure,
> then the memory pressure may cause migrate_pages() fail.
>
> If the failure is caused by memory pressure (i.e. returning -ENOMEM),
> tag the node with PGDAT_CONTENDED. The tag would be cleared once the
> target node is balanced again.
>
> Check if the target node is PGDAT_CONTENDED or not, if it is just skip
> demotion.

This seems like an actively bad idea to me.

Why do we need an *active* note to say the node is contended? Why isn't
just getting a failure back from migrate_pages() enough? Have you
observed this in practice?