Re: [PATCH -mm] do_migrate_pages() calls migrate_to_node() even iftask is already on a correct node

From: Christoph Lameter
Date: Fri Mar 30 2012 - 12:15:09 EST


On Thu, 29 Mar 2012, KOSAKI Motohiro wrote:

> >
> > for_each_node_mask(s, tmp) {
> > +
> > + /* IFF there is an equal number of source and
> > + * destination nodes, maintain relative node distance
> > + * even when source and destination nodes overlap.
> > + * However, when the node weight is unequal, never
> > move
> > + * memory out of any destination nodes */
> > + if ((nodes_weight(*from_nodes) !=
> > nodes_weight(*to_nodes)) &&
> > + (node_isset(s, *to_nodes)))
> > + continue;
> > +
> > d = node_remap(s, *from_nodes, *to_nodes);
> > if (s == d)
> > continue;
>
> I'm confused. Could you please explain why you choose nodes_weight()? On my
> first impression,
> it seems almostly unrelated factor.

Isnt this the original code by Paul? I would think that the 1-1 movement
is only useful to do if the number of nodes in both the destination and
the source is the same.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/