We were assuming that it was OK to do a GFP_KERNEL allocation in page
fault context.  That appears to be largely true, but filesystems are
permitted to override that in their setting of mapping->gfp_flags, which
the VM then massages into vmf->gfp_flags.  No practical difference for
now, but there may come a day when we would have surprised a filesystem.

Signed-off-by: Matthew Wilcox <matthew.r.wil...@intel.com>
Reviewed-by: Ross Zwisler <ross.zwis...@linux.intel.com>
---
 fs/dax.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/dax.c b/fs/dax.c
index 35f0709..50636e1 100644
--- a/fs/dax.c
+++ b/fs/dax.c
@@ -316,7 +316,7 @@ static int dax_load_hole(struct address_space *mapping, 
struct page *page,
        struct inode *inode = mapping->host;
        if (!page)
                page = find_or_create_page(mapping, vmf->pgoff,
-                                               GFP_KERNEL | __GFP_ZERO);
+                                               vmf->gfp_mask | __GFP_ZERO);
        if (!page)
                return VM_FAULT_OOM;
        /* Recheck i_size under page lock to avoid truncate race */
-- 
2.7.0

Reply via email to