|| ||David Rientjes <rientjes-AT-google.com> |
|| ||Andrew Morton <akpm-AT-linux-foundation.org>,
Steven Whitehouse <swhiteho-AT-redhat.com>,
Jens Axboe <jaxboe-AT-fusionio.com>,
Chris Mason <chris.mason-AT-oracle.com>,
Neil Brown <neilb-AT-suse.de> |
|| ||[patch 0/6] remove dependency on __GFP_NOFAIL |
|| ||Mon, 16 Aug 2010 19:57:46 -0700 (PDT)|
|| ||Article, Thread
This patchset removes __GFP_NOFAIL from various allocations when those
callers don't have __GFP_FS set, meaning they cannot invoke the oom
killer to free memory.
This is the second phase of four for the total removal of __GFP_NOFAIL:
the remaining phases will introduce __GFP_KILLABLE to invoke the oom
killer to free memory for all remaining callers since they allow
__GFP_FS, and then __GFP_NOFAIL will be removed from the page allocator.
/* FIXME */ comments were added where potentially infinite loops were
added to the callers. These always had the potential to infinitely loop
in the page allocator, but those loops will now occur in the caller
instead and some documentation of this behavior was necessary (grep for
__GFP_NOFAIL will no longer work when this effort is completed).
There's a benefit for the removal of __GFP_NOFAIL: we save several
branches in the page allocator if we can move this logic to the caller
to post comments)