Migration normally requires a call to migrate_prep() as a preparation
step. This schedules work on all CPUs for pagevecs to be drained. This
makes sense for move_pages and memory hot-remove but is unnecessary
for memory compaction.
To avoid queueing work on multiple CPUs, this patch introduces
migrate_prep_local() which drains just local pagevecs.
This patch can be either merged with mmcompaction-memory-compaction-core.patch
or placed immediately after it to clarify why migrate_prep_local() was
introduced.
Signed-off-by: Mel Gorman<mel@xxxxxxxxx>