Message ID | 1497335447-4937-1-git-send-email-hyc.lee@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Hyunchul, Am 13.06.2017 um 08:30 schrieb Hyunchul Lee: > From: Hyunchul Lee <cheol.lee@lge.com> > > Use readahead_gfp_mask for gfp flags when allocating pages. > This set additional flags which are __GFP_NORETRY and > __GFP_NOWARN. So OOMs and a failure message can be > avoided. > And we should remove __GFP_FS from flags to prevent from > calling ubifs_writepage during page reclaim. Your commit message does not explain why we need this and what problem it solves. When facing changes like this I'm especially interested in whether this is a theoretical bugfix or not. Thanks, //richard
diff --git a/fs/ubifs/file.c b/fs/ubifs/file.c index d9ae86f..4396c04 100644 --- a/fs/ubifs/file.c +++ b/fs/ubifs/file.c @@ -735,6 +735,7 @@ static int ubifs_do_bulk_read(struct ubifs_info *c, struct bu_info *bu, int err, page_idx, page_cnt, ret = 0, n = 0; int allocate = bu->buf ? 0 : 1; loff_t isize; + gfp_t ra_gfp_mask = readahead_gfp_mask(mapping) & ~__GFP_FS; err = ubifs_tnc_get_bu_keys(c, bu); if (err) @@ -796,8 +797,7 @@ static int ubifs_do_bulk_read(struct ubifs_info *c, struct bu_info *bu, if (page_offset > end_index) break; - page = find_or_create_page(mapping, page_offset, - GFP_NOFS | __GFP_COLD); + page = find_or_create_page(mapping, page_offset, ra_gfp_mask); if (!page) break; if (!PageUptodate(page))