lkml.org 
[lkml]   [2012]   [Oct]   [31]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Subject[PART6 Patch] memory-hotplug: bugfix for movable node
    Date
    This patch is part6 of the following patchset:
    https://lkml.org/lkml/2012/10/29/319

    The patchset is based on Linus's tree with these three patches already applied:
    https://lkml.org/lkml/2012/10/24/151
    https://lkml.org/lkml/2012/10/26/150

    Part1 is here:
    https://lkml.org/lkml/2012/10/31/30

    Part2 is here:
    http://marc.info/?l=linux-kernel&m=135166705909544&w=2

    Part3 is here:
    http://marc.info/?l=linux-kernel&m=135167050510527&w=2

    Part4 is here:
    http://marc.info/?l=linux-kernel&m=135167344211401&w=2

    Part5 is here:
    http://marc.info/?l=linux-kernel&m=135167497312063&w=2

    You can apply this patch without the other parts.

    Issues):

    mempolicy(M_BIND) don't act well when the nodemask has movable nodes only,
    the kernel allocation will fail and the task can't create new task or other
    kernel objects.

    So we change the strategy/policy
    when the bound nodemask has movable node(s) only, we only
    apply mempolicy for userspace allocation, don't apply it
    for kernel allocation.

    CPUSET also has the same problem, but the code spread in page_alloc.c,
    and we doesn't fix it yet, we can/will change allocation strategy to one of
    these 3 strategies:
    1) the same strategy as mempolicy
    2) change cpuset, make nodemask always has at least a normal node
    3) split nodemask: nodemask_user and nodemask_kernel

    This patchset only fixes issue1.

    Lai Jiangshan (1):
    mempolicy: fix is_valid_nodemask()

    mm/mempolicy.c | 36 ++++++++++++++++++++++--------------
    1 file changed, 22 insertions(+), 14 deletions(-)

    --
    1.8.0



    \
     
     \ /
      Last update: 2012-10-31 13:01    [W:0.025 / U:61.256 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site