Re: [patch -mmotm] mm: invoke oom killer for __GFP_NOFAIL

From: Minchan Kim
Date: Mon May 11 2009 - 03:29:35 EST


Hi, David.

On Sat, 9 May 2009 15:46:39 -0700 (PDT)
David Rientjes <rientjes@xxxxxxxxxx> wrote:

> The oom killer must be invoked regardless of the order if the allocation
> is __GFP_NOFAIL, otherwise it will loop forever when reclaim fails to
> free some memory.
>

Hmm.. if __alloc_pages_may_oom fail to allocate free page due to order > PAGE_ALLOC_COSTRY_ORDER,

It will go to nopage label in __alloc_pages_slowpath.
Then it will show the page allocation failure warning and will return.
Retrying depends on caller.

So, I think it won't loop forever.
Do I miss something ?

In addition, the OOM killer can help for getting the high order pages ?

--
Kinds Regards
Minchan Kim
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/