Messages in this thread | | | Date | Mon, 10 Feb 2014 15:30:32 -0800 | From | Andrew Morton <> | Subject | Re: [PATCH 4/4] hugetlb: hugepagesnid=: add 1G huge page support |
| |
On Mon, 10 Feb 2014 12:27:48 -0500 Luiz Capitulino <lcapitulino@redhat.com> wrote:
> > ... > > --- a/mm/hugetlb.c > +++ b/mm/hugetlb.c > @@ -2051,6 +2051,29 @@ void __init hugetlb_add_hstate(unsigned order) > parsed_hstate = h; > } > > +static void __init hugetlb_hstate_alloc_pages_nid(struct hstate *h, > + int nid, > + unsigned long nr_pages) > +{ > + struct huge_bootmem_page *m; > + unsigned long i; > + void *addr; > + > + for (i = 0; i < nr_pages; i++) { > + addr = memblock_virt_alloc_nid_nopanic( > + huge_page_size(h), huge_page_size(h), > + 0, BOOTMEM_ALLOC_ACCESSIBLE, nid); > + if (!addr) > + break; > + m = addr; > + BUG_ON((unsigned long)virt_to_phys(m) & (huge_page_size(h) - 1));
IS_ALIGNED()?
> + list_add(&m->list, &huge_boot_pages); > + m->hstate = h; > + } > + > + h->max_huge_pages += i; > +} > + > void __init hugetlb_add_nrpages_nid(unsigned order, unsigned long nid, > unsigned long nr_pages) > {
Please cc Yinghai Lu <yinghai@kernel.org> on these patches - he understands memblock well and is a strong reviewer.
| |