Messages in this thread | | | Date | Tue, 14 Apr 2009 11:46:04 -0700 | From | Andrew Morton <> | Subject | Re: [PATCH 0/6] Handle bio_alloc failure |
| |
On Tue, 14 Apr 2009 14:16:32 -0400 Theodore Tso <tytso@mit.edu> wrote:
> In include/linux/page_alloc.h, > __GFP_NOFAIL is documented as "will never fail", but it says > absolutely nothing about __GFP_WAIT.
In the present implementation, a __GFP_WAIT allocation for order <=3 will only fail if the caller was oom-killed.
Which raises the question "what happens when a mempool_alloc() caller gets oom-killed?".
Seems that it will loop around in mempool_alloc() doing weak attempts to allocate memory, not doing direct reclaim while waiting for someone else to free something up. hm. I guess it'll recover eventually.
| |