* [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