[PATCH 4/5] v2 Update sysfs node routines for new sysfs memory directories
From: Nathan Fontenot <hidden>
Date: 2010-07-15 18:40:44
Also in:
linux-mm, lkml
Update the node sysfs directory routines that create links to the memory sysfs directories under each node. This update makes the node code aware that a memory sysfs directory can cover multiple memory sections. Signed-off-by: Nathan Fontenot <redacted> --- drivers/base/node.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) Index: linux-2.6/drivers/base/node.c ===================================================================
--- linux-2.6.orig/drivers/base/node.c 2010-07-15 09:54:06.000000000 -0500
+++ linux-2.6/drivers/base/node.c 2010-07-15 09:56:16.000000000 -0500@@ -346,8 +346,10 @@ return -EFAULT; if (!node_online(nid)) return 0; - sect_start_pfn = section_nr_to_pfn(mem_blk->phys_index); - sect_end_pfn = sect_start_pfn + PAGES_PER_SECTION - 1; + + sect_start_pfn = section_nr_to_pfn(mem_blk->start_phys_index); + sect_end_pfn = section_nr_to_pfn(mem_blk->end_phys_index); + sect_end_pfn += PAGES_PER_SECTION - 1; for (pfn = sect_start_pfn; pfn <= sect_end_pfn; pfn++) { int page_nid;
@@ -383,8 +385,10 @@ if (!unlinked_nodes) return -ENOMEM; nodes_clear(*unlinked_nodes); - sect_start_pfn = section_nr_to_pfn(mem_blk->phys_index); - sect_end_pfn = sect_start_pfn + PAGES_PER_SECTION - 1; + + sect_start_pfn = section_nr_to_pfn(mem_blk->start_phys_index); + sect_end_pfn = section_nr_to_pfn(mem_blk->end_phys_index); + sect_end_pfn += PAGES_PER_SECTION - 1; for (pfn = sect_start_pfn; pfn <= sect_end_pfn; pfn++) { int nid;