On Sat 21-03-15 09:51:39, Dave Chinner wrote: > On Fri, Mar 20, 2015 at 02:14:53PM +0100, Michal Hocko wrote: > > On Fri 20-03-15 14:48:20, Dave Chinner wrote: > > > On Thu, Mar 19, 2015 at 01:44:41PM +0100, Michal Hocko wrote: > > > > > allocations where the caller cannot pass a gfp_mask need to obey > > > > > the mapping_gfp_mask that is set by the mapping owner.... > > > > > > > > Hmm, I thought this is true only when the function might be called from > > > > the fs path. > > > > > > How do you know in, say, mpage_readpages, you aren't being called > > > from a fs path that holds locks? e.g. we can get there from ext4 > > > doing readdir, so it is holding an i_mutex lock at that point. > > > > > > Many other paths into mpages_readpages don't hold locks, but there > > > are some that do, and those that do need functionals like this to > > > obey the mapping_gfp_mask because it is set appropriately for the > > > allocation context of the inode that owns the mapping.... > > > > What about the following? > > --- > > From 5d905cb291138d61bbab056845d6e53bc4451ec8 Mon Sep 17 00:00:00 2001 > > From: Michal Hocko <[email protected]> > > Date: Thu, 19 Mar 2015 14:56:56 +0100 > > Subject: [PATCH 1/2] mm: do not ignore mapping_gfp_mask in page cache > > allocation paths > > Looks reasonable, though I though there were more places that that > in the mapping paths that need to be careful...
I have focused on those which involve page cache allocation because those are obvious. We might need others but I do not see them right now. I will include this patch for the next submit after I manage to wrap my head around up-coming xfs changes and come up with something for page_cache_read vs OOM killer issue. -- Michal Hocko SUSE Labs -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

