diff options
Diffstat (limited to 'drivers/base/node.c')
-rw-r--r-- | drivers/base/node.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/drivers/base/node.c b/drivers/base/node.c index aa878fbcf705..0b0f38c2c7cd 100644 --- a/drivers/base/node.c +++ b/drivers/base/node.c | |||
@@ -802,9 +802,10 @@ int register_mem_sect_under_node(struct memory_block *mem_blk, void *arg) | |||
802 | return 0; | 802 | return 0; |
803 | } | 803 | } |
804 | 804 | ||
805 | /* unregister memory section under all nodes that it spans */ | 805 | /* |
806 | int unregister_mem_sect_under_nodes(struct memory_block *mem_blk, | 806 | * Unregister memory block device under all nodes that it spans. |
807 | unsigned long phys_index) | 807 | */ |
808 | int unregister_memory_block_under_nodes(struct memory_block *mem_blk) | ||
808 | { | 809 | { |
809 | NODEMASK_ALLOC(nodemask_t, unlinked_nodes, GFP_KERNEL); | 810 | NODEMASK_ALLOC(nodemask_t, unlinked_nodes, GFP_KERNEL); |
810 | unsigned long pfn, sect_start_pfn, sect_end_pfn; | 811 | unsigned long pfn, sect_start_pfn, sect_end_pfn; |
@@ -817,8 +818,8 @@ int unregister_mem_sect_under_nodes(struct memory_block *mem_blk, | |||
817 | return -ENOMEM; | 818 | return -ENOMEM; |
818 | nodes_clear(*unlinked_nodes); | 819 | nodes_clear(*unlinked_nodes); |
819 | 820 | ||
820 | sect_start_pfn = section_nr_to_pfn(phys_index); | 821 | sect_start_pfn = section_nr_to_pfn(mem_blk->start_section_nr); |
821 | sect_end_pfn = sect_start_pfn + PAGES_PER_SECTION - 1; | 822 | sect_end_pfn = section_nr_to_pfn(mem_blk->end_section_nr); |
822 | for (pfn = sect_start_pfn; pfn <= sect_end_pfn; pfn++) { | 823 | for (pfn = sect_start_pfn; pfn <= sect_end_pfn; pfn++) { |
823 | int nid; | 824 | int nid; |
824 | 825 | ||