[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH RESEND RFC 1/8] mm: Separate free page chunk merging into its own routine
On 27/02/17 00:37, Boris Ostrovsky wrote: > +static void merge_chunks(struct page_info *pg, unsigned int node, > + unsigned int zone, unsigned int order) > +{ > + ASSERT(spin_is_locked(&heap_lock)); > + > + /* Merge chunks as far as possible. */ > + while ( order < MAX_ORDER ) > + { > + unsigned int mask = 1UL << order; This was unsigned long before. If order is guaranteed never to be larger than 31, we are ok. If not, it needs correctly. ~Andrew > /* Free 2^@order set of pages. */ > static void free_heap_pages( > struct page_info *pg, unsigned int order) > { > - unsigned long mask, mfn = page_to_mfn(pg); > + unsigned long mfn = page_to_mfn(pg); > unsigned int i, node = phys_to_nid(page_to_maddr(pg)), tainted = 0; > unsigned int zone = page_to_zone(pg); > > @@ -977,38 +1024,7 @@ static void free_heap_pages( > midsize_alloc_zone_pages = max( > midsize_alloc_zone_pages, total_avail_pages / > MIDSIZE_ALLOC_FRAC); > > - /* Merge chunks as far as possible. */ > - while ( order < MAX_ORDER ) > - { > - mask = 1UL << order; > - _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |