• Mel Gorman's avatar
    mm: ignore mempolicies when using ALLOC_NO_WATERMARK · 183f6371
    Mel Gorman authored
    The reserve is proportionally distributed over all !highmem zones in the
    system.  So we need to allow an emergency allocation access to all zones.
    In order to do that we need to break out of any mempolicy boundaries we
    might have.
    
    In my opinion that does not break mempolicies as those are user oriented
    and not system oriented.  That is, system allocations are not guaranteed
    to be within mempolicy boundaries.  For instance IRQs do not even have a
    mempolicy.
    
    So breaking out of mempolicy boundaries for 'rare' emergency allocations,
    which are always system allocations (as opposed to user) is ok.
    Signed-off-by: default avatarPeter Zijlstra <a.p.zijlstra@chello.nl>
    Signed-off-by: default avatarMel Gorman <mgorman@suse.de>
    Cc: David Miller <davem@davemloft.net>
    Cc: Neil Brown <neilb@suse.de>
    Cc: Mike Christie <michaelc@cs.wisc.edu>
    Cc: Eric B Munson <emunson@mgebm.net>
    Cc: Eric Dumazet <eric.dumazet@gmail.com>
    Cc: Sebastian Andrzej Siewior <sebastian@breakpoint.cc>
    Cc: Mel Gorman <mgorman@suse.de>
    Cc: Christoph Lameter <cl@linux.com>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    183f6371
page_alloc.c 167 KB