This patch changes do_migrate_pages() to only preserve the relative
layout inside the
program if the number of NUMA nodes in the source and destination mask
are the
same. If the number is different, we do a much more efficient migration
by not touching
memory that is in an allowed node.
This preserves the old behaviour for programs that want it, while
allowing a userspace
NUMA placement tool to use the new, faster migration. This improves
performance in
our tests by up to a factor of 7.
Signed-off-by: Larry Woodman<lwoodman@xxxxxxxxxx>