public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2] x86/mm/64: Rename the register_page_bootmem_memmap() 'size' parameter to 'nr_pages'
@ 2017-10-24 14:57 Baoquan He
  2017-10-26  6:25 ` Ingo Molnar
  0 siblings, 1 reply; 3+ messages in thread
From: Baoquan He @ 2017-10-24 14:57 UTC (permalink / raw)
  To: linux-kernel
  Cc: Baoquan He, Linus Torvalds, Peter Zijlstra, Thomas Gleixner, akpm,
	Ingo Molnar

register_page_bootmem_memmap()'s 3rd 'size' parameter is named
in a somewhat misleading fashion - rename it to 'nr_pages' which
makes the units of it much clearer.

And also rename the existing local variable 'nr_pages' to 'pages'.
Otherwise building error will be reported since these two variables
are different type though both represent number of pages. Take
'nr_pages' as register_page_bootmem_memmap()'s parameter name since
it has more specific meaning, can make better function interface.

Signed-off-by: Baoquan He <bhe@redhat.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: akpm@linux-foundation.org
Link: http://lkml.kernel.org/r/1508849249-18035-1-git-send-email-bhe@redhat.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
---
v1->v2:
  Code change in v1 is incomplete, caused build failure. Change
  it after Ingo pointed it out.

  And Ingo helped rewrite the change log of v1. I also add description
  about the local variable change. 

 arch/x86/mm/init_64.c | 10 +++++-----
 include/linux/mm.h    |  2 +-
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/arch/x86/mm/init_64.c b/arch/x86/mm/init_64.c
index 048fbe8fc274..18b9d2c7f5ef 100644
--- a/arch/x86/mm/init_64.c
+++ b/arch/x86/mm/init_64.c
@@ -1426,16 +1426,16 @@ int __meminit vmemmap_populate(unsigned long start, unsigned long end, int node)
 
 #if defined(CONFIG_MEMORY_HOTPLUG_SPARSE) && defined(CONFIG_HAVE_BOOTMEM_INFO_NODE)
 void register_page_bootmem_memmap(unsigned long section_nr,
-				  struct page *start_page, unsigned long size)
+				  struct page *start_page, unsigned long nr_pages)
 {
 	unsigned long addr = (unsigned long)start_page;
-	unsigned long end = (unsigned long)(start_page + size);
+	unsigned long end = (unsigned long)(start_page + nr_pages);
 	unsigned long next;
 	pgd_t *pgd;
 	p4d_t *p4d;
 	pud_t *pud;
 	pmd_t *pmd;
-	unsigned int nr_pages;
+	unsigned int pages;
 	struct page *page;
 
 	for (; addr < end; addr = next) {
@@ -1482,9 +1482,9 @@ void register_page_bootmem_memmap(unsigned long section_nr,
 			if (pmd_none(*pmd))
 				continue;
 
-			nr_pages = 1 << (get_order(PMD_SIZE));
+			pages = 1 << (get_order(PMD_SIZE));
 			page = pmd_page(*pmd);
-			while (nr_pages--)
+			while (pages--)
 				get_page_bootmem(section_nr, page++,
 						 SECTION_INFO);
 		}
diff --git a/include/linux/mm.h b/include/linux/mm.h
index 065d99deb847..b2c7045e9604 100644
--- a/include/linux/mm.h
+++ b/include/linux/mm.h
@@ -2495,7 +2495,7 @@ void vmemmap_populate_print_last(void);
 void vmemmap_free(unsigned long start, unsigned long end);
 #endif
 void register_page_bootmem_memmap(unsigned long section_nr, struct page *map,
-				  unsigned long size);
+				  unsigned long nr_pages);
 
 enum mf_flags {
 	MF_COUNT_INCREASED = 1 << 0,
-- 
2.5.5

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH v2] x86/mm/64: Rename the register_page_bootmem_memmap() 'size' parameter to 'nr_pages'
  2017-10-24 14:57 [PATCH v2] x86/mm/64: Rename the register_page_bootmem_memmap() 'size' parameter to 'nr_pages' Baoquan He
@ 2017-10-26  6:25 ` Ingo Molnar
  2017-10-26  6:43   ` Baoquan He
  0 siblings, 1 reply; 3+ messages in thread
From: Ingo Molnar @ 2017-10-26  6:25 UTC (permalink / raw)
  To: Baoquan He
  Cc: linux-kernel, Linus Torvalds, Peter Zijlstra, Thomas Gleixner,
	akpm


* Baoquan He <bhe@redhat.com> wrote:

> register_page_bootmem_memmap()'s 3rd 'size' parameter is named
> in a somewhat misleading fashion - rename it to 'nr_pages' which
> makes the units of it much clearer.
> 
> And also rename the existing local variable 'nr_pages' to 'pages'.
> Otherwise building error will be reported since these two variables
> are different type though both represent number of pages. Take
> 'nr_pages' as register_page_bootmem_memmap()'s parameter name since
> it has more specific meaning, can make better function interface.
> 
> Signed-off-by: Baoquan He <bhe@redhat.com>
> Cc: Linus Torvalds <torvalds@linux-foundation.org>
> Cc: Peter Zijlstra <peterz@infradead.org>
> Cc: Thomas Gleixner <tglx@linutronix.de>
> Cc: akpm@linux-foundation.org
> Link: http://lkml.kernel.org/r/1508849249-18035-1-git-send-email-bhe@redhat.com
> Signed-off-by: Ingo Molnar <mingo@kernel.org>
> ---
> v1->v2:
>   Code change in v1 is incomplete, caused build failure. Change
>   it after Ingo pointed it out.
> 
>   And Ingo helped rewrite the change log of v1. I also add description
>   about the local variable change. 
> 
>  arch/x86/mm/init_64.c | 10 +++++-----
>  include/linux/mm.h    |  2 +-
>  2 files changed, 6 insertions(+), 6 deletions(-)
> 
> diff --git a/arch/x86/mm/init_64.c b/arch/x86/mm/init_64.c
> index 048fbe8fc274..18b9d2c7f5ef 100644
> --- a/arch/x86/mm/init_64.c
> +++ b/arch/x86/mm/init_64.c
> @@ -1426,16 +1426,16 @@ int __meminit vmemmap_populate(unsigned long start, unsigned long end, int node)
>  
>  #if defined(CONFIG_MEMORY_HOTPLUG_SPARSE) && defined(CONFIG_HAVE_BOOTMEM_INFO_NODE)
>  void register_page_bootmem_memmap(unsigned long section_nr,
> -				  struct page *start_page, unsigned long size)
> +				  struct page *start_page, unsigned long nr_pages)
>  {
>  	unsigned long addr = (unsigned long)start_page;
> -	unsigned long end = (unsigned long)(start_page + size);
> +	unsigned long end = (unsigned long)(start_page + nr_pages);
>  	unsigned long next;
>  	pgd_t *pgd;
>  	p4d_t *p4d;
>  	pud_t *pud;
>  	pmd_t *pmd;
> -	unsigned int nr_pages;
> +	unsigned int pages;
>  	struct page *page;
>  
>  	for (; addr < end; addr = next) {
> @@ -1482,9 +1482,9 @@ void register_page_bootmem_memmap(unsigned long section_nr,
>  			if (pmd_none(*pmd))
>  				continue;
>  
> -			nr_pages = 1 << (get_order(PMD_SIZE));
> +			pages = 1 << (get_order(PMD_SIZE));

Why is the get_order() call in extra parentheses?

Also, the 'pages' name sucks in a similar way 'size' sucks - in this context where 
we _already_ have a nr_pages variable it should be something more expressive like 
'nr_pmd_pages' or so.

Thanks,

	Ingo

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH v2] x86/mm/64: Rename the register_page_bootmem_memmap() 'size' parameter to 'nr_pages'
  2017-10-26  6:25 ` Ingo Molnar
@ 2017-10-26  6:43   ` Baoquan He
  0 siblings, 0 replies; 3+ messages in thread
From: Baoquan He @ 2017-10-26  6:43 UTC (permalink / raw)
  To: Ingo Molnar
  Cc: linux-kernel, Linus Torvalds, Peter Zijlstra, Thomas Gleixner,
	akpm

On 10/26/17 at 08:25am, Ingo Molnar wrote:
> 
> * Baoquan He <bhe@redhat.com> wrote:
> 
> > register_page_bootmem_memmap()'s 3rd 'size' parameter is named
> > in a somewhat misleading fashion - rename it to 'nr_pages' which
> > makes the units of it much clearer.
> > 
> > And also rename the existing local variable 'nr_pages' to 'pages'.
> > Otherwise building error will be reported since these two variables
> > are different type though both represent number of pages. Take
> > 'nr_pages' as register_page_bootmem_memmap()'s parameter name since
> > it has more specific meaning, can make better function interface.
> > 
> > Signed-off-by: Baoquan He <bhe@redhat.com>
> > Cc: Linus Torvalds <torvalds@linux-foundation.org>
> > Cc: Peter Zijlstra <peterz@infradead.org>
> > Cc: Thomas Gleixner <tglx@linutronix.de>
> > Cc: akpm@linux-foundation.org
> > Link: http://lkml.kernel.org/r/1508849249-18035-1-git-send-email-bhe@redhat.com
> > Signed-off-by: Ingo Molnar <mingo@kernel.org>
> > ---
> > v1->v2:
> >   Code change in v1 is incomplete, caused build failure. Change
> >   it after Ingo pointed it out.
> > 
> >   And Ingo helped rewrite the change log of v1. I also add description
> >   about the local variable change. 
> > 
> >  arch/x86/mm/init_64.c | 10 +++++-----
> >  include/linux/mm.h    |  2 +-
> >  2 files changed, 6 insertions(+), 6 deletions(-)
> > 
> > diff --git a/arch/x86/mm/init_64.c b/arch/x86/mm/init_64.c
> > index 048fbe8fc274..18b9d2c7f5ef 100644
> > --- a/arch/x86/mm/init_64.c
> > +++ b/arch/x86/mm/init_64.c
> > @@ -1426,16 +1426,16 @@ int __meminit vmemmap_populate(unsigned long start, unsigned long end, int node)
> >  
> >  #if defined(CONFIG_MEMORY_HOTPLUG_SPARSE) && defined(CONFIG_HAVE_BOOTMEM_INFO_NODE)
> >  void register_page_bootmem_memmap(unsigned long section_nr,
> > -				  struct page *start_page, unsigned long size)
> > +				  struct page *start_page, unsigned long nr_pages)
> >  {
> >  	unsigned long addr = (unsigned long)start_page;
> > -	unsigned long end = (unsigned long)(start_page + size);
> > +	unsigned long end = (unsigned long)(start_page + nr_pages);
> >  	unsigned long next;
> >  	pgd_t *pgd;
> >  	p4d_t *p4d;
> >  	pud_t *pud;
> >  	pmd_t *pmd;
> > -	unsigned int nr_pages;
> > +	unsigned int pages;
> >  	struct page *page;
> >  
> >  	for (; addr < end; addr = next) {
> > @@ -1482,9 +1482,9 @@ void register_page_bootmem_memmap(unsigned long section_nr,
> >  			if (pmd_none(*pmd))
> >  				continue;
> >  
> > -			nr_pages = 1 << (get_order(PMD_SIZE));
> > +			pages = 1 << (get_order(PMD_SIZE));
> 
> Why is the get_order() call in extra parentheses?

Yeah, the extra parentheses makes no sense,  will clean it up.

> 
> Also, the 'pages' name sucks in a similar way 'size' sucks - in this context where 
> we _already_ have a nr_pages variable it should be something more expressive like 
> 'nr_pmd_pages' or so.

nr_pmd_pages looks better, will use it instead.

Thanks for reviewing and great suggestion!

Thanks
Baoquan

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2017-10-26  6:43 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-10-24 14:57 [PATCH v2] x86/mm/64: Rename the register_page_bootmem_memmap() 'size' parameter to 'nr_pages' Baoquan He
2017-10-26  6:25 ` Ingo Molnar
2017-10-26  6:43   ` Baoquan He

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox