Re: [RFC][PATCH 5/8] mm/numa: automatically generate node migration order

From: Dave Hansen
Date: Wed Jul 01 2020 - 14:23:06 EST


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.