Re: How to handle TIF_MEMDIE stalls?

Tetsuo Handa
2015-02-10T14:52:50Z

(Michal is offline, asking Johannes instead.)

Tetsuo Handa wrote:
> (A) The order-0 __GFP_WAIT allocation fails immediately upon OOM condition
> despite we didn't remove the
>
> /*
> * In this implementation, order <= PAGE_ALLOC_COSTLY_ORDER
> * means __GFP_NOFAIL, but that may not be true in other
> * implementations.
> */
> if (order <= PAGE_ALLOC_COSTLY_ORDER)
> return 1;
>
> check in should_alloc_retry(). Is this what you expected?

This behavior is caused by commit 9879de7373fcfb46 "mm: page_alloc:
embed OOM killing naturally into allocation slowpath". Did you apply
that commit with agreement to let GFP_NOIO / GFP_NOFS allocations fail
upon memory pressure and permit filesystems to take fs error actions?

/* The OOM killer does not compensate for light reclaim */
if (!(gfp_mask & __GFP_FS))
goto out;