bootmem: Replace work_with_active_regions() with for_each_mem_pfn_range()
authorTejun Heo <tj@kernel.org>
Thu, 14 Jul 2011 07:46:10 +0000 (09:46 +0200)
committerH. Peter Anvin <hpa@linux.intel.com>
Thu, 14 Jul 2011 18:45:29 +0000 (11:45 -0700)
commit5dfe8660a3d7f1ee1265c3536433ee53da3f98a3
treec58232b88741ba1d8cce417b62f3f658369ad9c2
parentfc769a8e70a3348d5de49e5f69f6aff810157360
bootmem: Replace work_with_active_regions() with for_each_mem_pfn_range()

Callback based iteration is cumbersome and much less useful than
for_each_*() iterator.  This patch implements for_each_mem_pfn_range()
which replaces work_with_active_regions().  All the current users of
work_with_active_regions() are converted.

This simplifies walking over early_node_map and will allow converting
internal logics in page_alloc to use iterator instead of walking
early_node_map directly, which in turn will enable moving node
information to memblock.

powerpc change is only compile tested.

Signed-off-by: Tejun Heo <tj@kernel.org>
Link: http://lkml.kernel.org/r/20110714074610.GD3455@htj.dyndns.org
Cc: Yinghai Lu <yinghai@kernel.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
arch/powerpc/mm/numa.c
arch/x86/mm/memblock.c
drivers/pci/intel-iommu.c
include/linux/mm.h
mm/page_alloc.c