• Paul Jackson's avatar
    [PATCH] mm: fix __alloc_pages cpuset ALLOC_* flags · 47f3a867
    Paul Jackson authored
    Two changes to the setting of the ALLOC_CPUSET flag in
    mm/page_alloc.c:__alloc_pages()
    
    - A bug fix - the "ignoring mins" case should not be honoring ALLOC_CPUSET.
      This case of all cases, since it is handling a request that will free up
      more memory than is asked for (exiting tasks, e.g.) should be allowed to
      escape cpuset constraints when memory is tight.
    
    - A logic change to make it simpler.  Honor cpusets even on GFP_ATOMIC
      (!wait) requests.  With this, cpuset confinement applies to all requests
      except ALLOC_NO_WATERMARKS, so that in a subsequent cleanup patch, I can
      remove the ALLOC_CPUSET flag entirely.  Since I don't know any real reason
      this logic has to be either way, I am choosing the path of the simplest
      code.
    Signed-off-by: default avatarPaul Jackson <pj@sgi.com>
    Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
    47f3a867
page_alloc.c 64.5 KB