author: Linus Torvalds <torvalds@linux-foundation.org> 2016-07-26 19:55:54 -0700
committer: Linus Torvalds <torvalds@linux-foundation.org> 2016-07-26 19:55:54 -0700
commit: 0e06f5c0deeef0332a5da2ecb8f1fcf3e024d958
parent: f7816ad0f878dacd5f0120476f9b836ccf8699ea
Commit Summary:
Diffstat:
1 file changed, 3 insertions, 1 deletion
diff --git a/fs/mpage.c b/fs/mpage.c
index 37b28280ad04..2ca1f39c8cba 100644
--- a/fs/mpage.c
+++ b/fs/mpage.c
@@ -72,6 +72,8 @@ mpage_alloc(struct block_device *bdev,
{
struct bio *bio;
+ /* Restrict the given (page cache) mask for slab allocations */
+ gfp_flags &= GFP_KERNEL;
bio = bio_alloc(gfp_flags, nr_vecs);
if (bio == NULL && (current->flags & PF_MEMALLOC)) {
@@ -363,7 +365,7 @@ mpage_readpages(struct address_space *mapping, struct list_head *pages,
sector_t last_block_in_bio = 0;
struct buffer_head map_bh;
unsigned long first_logical_block = 0;
- gfp_t gfp = mapping_gfp_constraint(mapping, GFP_KERNEL);
+ gfp_t gfp = readahead_gfp_mask(mapping);
map_bh.b_state = 0;
map_bh.b_size = 0;