Re: [RFC][PATCH 5/8] mm/numa: automatically generate node migration order
From: Huang\, Ying
Date: Wed Jul 01 2020 - 21:20:18 EST
Dave Hansen <dave.hansen@xxxxxxxxx> writes:
> On 6/30/20 1:22 AM, Huang, Ying wrote:
>>> + /*
>>> + * To avoid cycles in the migration "graph", ensure
>>> + * that migration sources are not future targets by
>>> + * setting them in 'used_targets'.
>>> + *
>>> + * But, do this only once per pass so that multiple
>>> + * source nodes can share a target node.
>> establish_migrate_target() calls find_next_best_node(), which will set
>> target_node in used_targets. So it seems that the nodes_or() below is
>> only necessary to initialize used_targets, and multiple source nodes
>> cannot share one target node in current implementation.
>
> Yes, that is true. My focus on this implementation was simplicity and
> sanity for common configurations. I can certainly imagine scenarios
> where this is suboptimal.
>
> I'm totally open to other ways of doing this.
OK. So when we really need to share one target node for multiple source
nodes, we can add a parameter to find_next_best_node() to specify
whether set target_node in used_targets.
Best Regards,
Huang, Ying