diff options
Diffstat (limited to 'arch/x86/mm/numa_32.c')
| -rw-r--r-- | arch/x86/mm/numa_32.c | 33 |
1 files changed, 4 insertions, 29 deletions
diff --git a/arch/x86/mm/numa_32.c b/arch/x86/mm/numa_32.c index d1f7439d173c..3daefa04ace5 100644 --- a/arch/x86/mm/numa_32.c +++ b/arch/x86/mm/numa_32.c | |||
| @@ -194,7 +194,7 @@ void *alloc_remap(int nid, unsigned long size) | |||
| 194 | size = ALIGN(size, L1_CACHE_BYTES); | 194 | size = ALIGN(size, L1_CACHE_BYTES); |
| 195 | 195 | ||
| 196 | if (!allocation || (allocation + size) >= node_remap_end_vaddr[nid]) | 196 | if (!allocation || (allocation + size) >= node_remap_end_vaddr[nid]) |
| 197 | return 0; | 197 | return NULL; |
| 198 | 198 | ||
| 199 | node_remap_alloc_vaddr[nid] += size; | 199 | node_remap_alloc_vaddr[nid] += size; |
| 200 | memset(allocation, 0, size); | 200 | memset(allocation, 0, size); |
| @@ -416,39 +416,14 @@ void __init initmem_init(unsigned long start_pfn, | |||
| 416 | for_each_online_node(nid) | 416 | for_each_online_node(nid) |
| 417 | propagate_e820_map_node(nid); | 417 | propagate_e820_map_node(nid); |
| 418 | 418 | ||
| 419 | for_each_online_node(nid) | 419 | for_each_online_node(nid) { |
| 420 | memset(NODE_DATA(nid), 0, sizeof(struct pglist_data)); | 420 | memset(NODE_DATA(nid), 0, sizeof(struct pglist_data)); |
| 421 | NODE_DATA(nid)->bdata = &bootmem_node_data[nid]; | ||
| 422 | } | ||
| 421 | 423 | ||
| 422 | NODE_DATA(0)->bdata = &bootmem_node_data[0]; | ||
| 423 | setup_bootmem_allocator(); | 424 | setup_bootmem_allocator(); |
| 424 | } | 425 | } |
| 425 | 426 | ||
| 426 | void __init set_highmem_pages_init(void) | ||
| 427 | { | ||
| 428 | #ifdef CONFIG_HIGHMEM | ||
| 429 | struct zone *zone; | ||
| 430 | int nid; | ||
| 431 | |||
| 432 | for_each_zone(zone) { | ||
| 433 | unsigned long zone_start_pfn, zone_end_pfn; | ||
| 434 | |||
| 435 | if (!is_highmem(zone)) | ||
| 436 | continue; | ||
| 437 | |||
| 438 | zone_start_pfn = zone->zone_start_pfn; | ||
| 439 | zone_end_pfn = zone_start_pfn + zone->spanned_pages; | ||
| 440 | |||
| 441 | nid = zone_to_nid(zone); | ||
| 442 | printk(KERN_INFO "Initializing %s for node %d (%08lx:%08lx)\n", | ||
| 443 | zone->name, nid, zone_start_pfn, zone_end_pfn); | ||
| 444 | |||
| 445 | add_highpages_with_active_regions(nid, zone_start_pfn, | ||
| 446 | zone_end_pfn); | ||
| 447 | } | ||
| 448 | totalram_pages += totalhigh_pages; | ||
| 449 | #endif | ||
| 450 | } | ||
| 451 | |||
| 452 | #ifdef CONFIG_MEMORY_HOTPLUG | 427 | #ifdef CONFIG_MEMORY_HOTPLUG |
| 453 | static int paddr_to_nid(u64 addr) | 428 | static int paddr_to_nid(u64 addr) |
| 454 | { | 429 | { |
