summaryrefslogtreecommitdiff
path: root/mm
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2008-06-30 09:56:24 +0200
committerIngo Molnar <mingo@elte.hu>2008-06-30 09:56:24 +0200
commit37b493c9bf1d207d667f01bdaabd9a0ead17731f (patch)
treecc6c90ee13859a253b76554ec8835617a6966eda /mm
parent8fedf7e4b85a80704f7622fc53845a4b2b863a40 (diff)
parentee045d271b6de733a8e81f4782305f4dde7473d4 (diff)
Merge branch 'x86/setup-memory' into auto-x86-next
Conflicts: arch/x86/kernel/setup.c arch/x86/kernel/setup_32.c arch/x86/kernel/setup_64.c Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'mm')
-rw-r--r--mm/page_alloc.c20
1 files changed, 12 insertions, 8 deletions
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index 67f8f6a5150f..800838db3628 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -2933,10 +2933,14 @@ void __init free_bootmem_with_active_regions(int nid,
void __init work_with_active_regions(int nid, work_fn_t work_fn, void *data)
{
int i;
+ int ret;
- for_each_active_range_index_in_nid(i, nid)
- work_fn(early_node_map[i].start_pfn, early_node_map[i].end_pfn,
- data);
+ for_each_active_range_index_in_nid(i, nid) {
+ ret = work_fn(early_node_map[i].start_pfn,
+ early_node_map[i].end_pfn, data);
+ if (ret)
+ break;
+ }
}
/**
* sparse_memory_present_with_active_regions - Call memory_present for each active range
@@ -3517,7 +3521,7 @@ void __init add_active_range(unsigned int nid, unsigned long start_pfn,
{
int i;
- printk(KERN_DEBUG "Entering add_active_range(%d, %lu, %lu) "
+ printk(KERN_DEBUG "Entering add_active_range(%d, %#lx, %#lx) "
"%d entries of %d used\n",
nid, start_pfn, end_pfn,
nr_nodemap_entries, MAX_ACTIVE_REGIONS);
@@ -3666,7 +3670,7 @@ static void __init sort_node_map(void)
}
/* Find the lowest pfn for a node */
-unsigned long __init find_min_pfn_for_node(unsigned long nid)
+unsigned long __init find_min_pfn_for_node(int nid)
{
int i;
unsigned long min_pfn = ULONG_MAX;
@@ -3677,7 +3681,7 @@ unsigned long __init find_min_pfn_for_node(unsigned long nid)
if (min_pfn == ULONG_MAX) {
printk(KERN_WARNING
- "Could not find start_pfn for node %lu\n", nid);
+ "Could not find start_pfn for node %d\n", nid);
return 0;
}
@@ -3933,7 +3937,7 @@ void __init free_area_init_nodes(unsigned long *max_zone_pfn)
for (i = 0; i < MAX_NR_ZONES; i++) {
if (i == ZONE_MOVABLE)
continue;
- printk(" %-8s %8lu -> %8lu\n",
+ printk(" %-8s %0#10lx -> %0#10lx\n",
zone_names[i],
arch_zone_lowest_possible_pfn[i],
arch_zone_highest_possible_pfn[i]);
@@ -3949,7 +3953,7 @@ void __init free_area_init_nodes(unsigned long *max_zone_pfn)
/* Print out the early_node_map[] */
printk("early_node_map[%d] active PFN ranges\n", nr_nodemap_entries);
for (i = 0; i < nr_nodemap_entries; i++)
- printk(" %3d: %8lu -> %8lu\n", early_node_map[i].nid,
+ printk(" %3d: %0#10lx -> %0#10lx\n", early_node_map[i].nid,
early_node_map[i].start_pfn,
early_node_map[i].end_pfn);