Prev: linux-next: build failure after merge of the cifs tree
Next: x86,setup: add serial_console_port_base in boot_params
From: KAMEZAWA Hiroyuki on 15 Jul 2010 20:20 On Thu, 15 Jul 2010 13:40:40 -0500 Nathan Fontenot <nfont(a)austin.ibm.com> wrote: > 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 <nfont(a)austin.ibm.com> Shouldn't "static int link_mem_sections(int nid)" be update ? It does for (pfn = start_pfn; pfn < end_pfn; pfn += PAGES_PER_SECTION) { register.. Thanks, -Kame > --- > 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; > > > -- > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > the body of a message to majordomo(a)vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > Please read the FAQ at http://www.tux.org/lkml/ > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
From: Nathan Fontenot on 16 Jul 2010 11:50
On 07/15/2010 07:12 PM, KAMEZAWA Hiroyuki wrote: > On Thu, 15 Jul 2010 13:40:40 -0500 > Nathan Fontenot <nfont(a)austin.ibm.com> wrote: > >> 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 <nfont(a)austin.ibm.com> > > Shouldn't "static int link_mem_sections(int nid)" be update ? > It does > for (pfn = start_pfn; pfn < end_pfn; pfn += PAGES_PER_SECTION) { > register.. > No, although the name 'link_mem_sections' does imply that it should. The range of start_pfn..end_pfn examined in this routine is the range of pfn's covered by the entire node, not a memory_block. -Nathan > Thanks, > -Kame > > >> --- >> 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; >> >> >> -- >> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in >> the body of a message to majordomo(a)vger.kernel.org >> More majordomo info at http://vger.kernel.org/majordomo-info.html >> Please read the FAQ at http://www.tux.org/lkml/ >> > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ |