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  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20210107131835.GD4820@MiWiFi-R3L-srv>
Date:   Thu, 7 Jan 2021 21:18:35 +0800
From:   Baoquan He <bhe@...hat.com>
To:     David Hildenbrand <david@...hat.com>
Cc:     linux-kernel@...r.kernel.org, linux-mm@...ck.org,
        akpm@...ux-foundation.org, rppt@...nel.org
Subject: Re: [PATCH v3 2/4] mm: simplify parater of function
 memmap_init_zone()

On 01/05/21 at 05:53pm, David Hildenbrand wrote:
> [...]
> 
> > -void __meminit
> > -memmap_init_zone(unsigned long size, int nid, unsigned long zone,
> > -	     unsigned long start_pfn)
> > +void __meminit memmap_init_zone(struct zone *zone)
> >  {
> > +	unsigned long size = zone->spanned_pages;
> > +	int nid = zone_to_nid(zone), zone_id = zone_idx(zone);
> > +	unsigned long start_pfn = zone->zone_start_pfn;
> > +
> 
> Nit: reverse Christmas tree.

Ah, yes, I will reorder these lines.

> 
> >  	if (!vmem_map) {
> > -		memmap_init_range(size, nid, zone, start_pfn, start_pfn + size,
> > +		memmap_init_range(size, nid, zone_id, start_pfn, start_pfn + size,
> >  				 MEMINIT_EARLY, NULL, MIGRATE_MOVABLE);
> >  	} else {
> >  		struct page *start;
> > @@ -556,7 +558,7 @@ memmap_init_zone(unsigned long size, int nid, unsigned long zone,
> >  		args.start = start;
> >  		args.end = start + size;
> >  		args.nid = nid;
> > -		args.zone = zone;
> > +		args.zone = zone_id;
> >  
> >  		efi_memmap_walk(virtual_memmap_init, &args);
> >  	}
> > diff --git a/mm/page_alloc.c b/mm/page_alloc.c
> > index 69ebf75be91c..b2a46ffdaf0b 100644
> > --- a/mm/page_alloc.c
> > +++ b/mm/page_alloc.c
> > @@ -6292,16 +6292,16 @@ static inline u64 init_unavailable_range(unsigned long spfn, unsigned long epfn,
> >  }
> >  #endif
> >  
> > -void __init __weak memmap_init_zone(unsigned long size, int nid,
> > -			       unsigned long zone,
> > -			       unsigned long zone_start_pfn)
> > +void __init __weak memmap_init_zone(struct zone *zone)
> >  {
> >  	unsigned long start_pfn, end_pfn, hole_start_pfn = 0;
> > -	unsigned long zone_end_pfn = zone_start_pfn + size;
> > +	int i, nid = zone_to_nid(zone), zone_id = zone_idx(zone);
> > +	unsigned long zone_start_pfn = zone->zone_start_pfn;
> > +	unsigned long zone_end_pfn = zone_start_pfn + zone->spanned_pages;
> 
> dito.

OK.

> 
> >  	u64 pgcnt = 0;
> > -	int i;
> >  
> >  	for_each_mem_pfn_range(i, nid, &start_pfn, &end_pfn, NULL) {
> > +		unsigned long size;
> 
> You can just get rid of this parameter IMHO.

Someone possibly like a intermediate local variable better in this case,
but I am fine to both, will change as you suggested.

> 
> (Also, there is an empty line missing right now)

Sure. Thanks.

> 
> 
> Apart from that LGTM
> 
> -- 
> Thanks,
> 
> David / dhildenb

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ