lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Thu, 26 Oct 2017 08:25:56 +0200
From:   Ingo Molnar <mingo@...nel.org>
To:     Baoquan He <bhe@...hat.com>
Cc:     linux-kernel@...r.kernel.org,
        Linus Torvalds <torvalds@...ux-foundation.org>,
        Peter Zijlstra <peterz@...radead.org>,
        Thomas Gleixner <tglx@...utronix.de>, akpm@...ux-foundation.org
Subject: Re: [PATCH v2] x86/mm/64: Rename the register_page_bootmem_memmap()
 'size' parameter to 'nr_pages'


* Baoquan He <bhe@...hat.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@...hat.com>
> Cc: Linus Torvalds <torvalds@...ux-foundation.org>
> Cc: Peter Zijlstra <peterz@...radead.org>
> Cc: Thomas Gleixner <tglx@...utronix.de>
> Cc: akpm@...ux-foundation.org
> Link: http://lkml.kernel.org/r/1508849249-18035-1-git-send-email-bhe@redhat.com
> Signed-off-by: Ingo Molnar <mingo@...nel.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

Powered by blists - more mailing lists