lkml.org 
[lkml]   [2009]   [Oct]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 2/2][v2] powerpc: Make the CMM memory hotplug aware
    Hi,

    I am currently working on the s390 port for the cmm + hotplug
    patch, and I'm a little confused about the memory allocation
    policy, see below. Is it correct that the balloon cannot grow
    into ZONE_MOVABLE, while the pages for the balloon page list
    can?

    Robert Jennings wrote:
    > @@ -110,6 +125,9 @@ static long cmm_alloc_pages(long nr)
    > cmm_dbg("Begin request for %ld pages\n", nr);
    >
    > while (nr) {
    > + if (atomic_read(&hotplug_active))
    > + break;
    > +
    > addr = __get_free_page(GFP_NOIO | __GFP_NOWARN |
    > __GFP_NORETRY | __GFP_NOMEMALLOC);
    > if (!addr)
    > @@ -119,8 +137,10 @@ static long cmm_alloc_pages(long nr)
    > if (!pa || pa->index >= CMM_NR_PAGES) {
    > /* Need a new page for the page list. */
    > spin_unlock(&cmm_lock);
    > - npa = (struct cmm_page_array *)__get_free_page(GFP_NOIO | __GFP_NOWARN |
    > - __GFP_NORETRY | __GFP_NOMEMALLOC);
    > + npa = (struct cmm_page_array *)__get_free_page(
    > + GFP_NOIO | __GFP_NOWARN |
    > + __GFP_NORETRY | __GFP_NOMEMALLOC |
    > + __GFP_MOVABLE);
    > if (!npa) {
    > pr_info("%s: Can not allocate new page list\n", __func__);
    > free_page(addr);

    Why is the __GFP_MOVABLE added here, for the page list alloc, and not
    above for the balloon page alloc?

    --
    Regards,
    Gerald



    \
     
     \ /
      Last update: 2009-10-08 14:19    [W:0.023 / U:149.976 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site