Skip to content

Commit e0b89d0

Browse files
chaseyuJaegeuk Kim
authored andcommitted
f2fs: use f2fs_filemap_get_folio() instead of f2fs_pagecache_get_page()
Let's use f2fs_filemap_get_folio() instead of f2fs_pagecache_get_page() in ra_data_block() and move_data_block(), then remove f2fs_pagecache_get_page() since it has no user. Signed-off-by: Chao Yu <chao@kernel.org> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
1 parent 3b7e73d commit e0b89d0

File tree

2 files changed

+13
-20
lines changed

2 files changed

+13
-20
lines changed

fs/f2fs/f2fs.h

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2961,16 +2961,6 @@ static inline struct folio *f2fs_filemap_get_folio(
29612961
return __filemap_get_folio(mapping, index, fgp_flags, gfp_mask);
29622962
}
29632963

2964-
static inline struct page *f2fs_pagecache_get_page(
2965-
struct address_space *mapping, pgoff_t index,
2966-
fgf_t fgp_flags, gfp_t gfp_mask)
2967-
{
2968-
if (time_to_inject(F2FS_M_SB(mapping), FAULT_PAGE_GET))
2969-
return NULL;
2970-
2971-
return pagecache_get_page(mapping, index, fgp_flags, gfp_mask);
2972-
}
2973-
29742964
static inline void f2fs_folio_put(struct folio *folio, bool unlock)
29752965
{
29762966
if (IS_ERR_OR_NULL(folio))

fs/f2fs/gc.c

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1211,7 +1211,7 @@ static int ra_data_block(struct inode *inode, pgoff_t index)
12111211
struct address_space *mapping = f2fs_is_cow_file(inode) ?
12121212
F2FS_I(inode)->atomic_inode->i_mapping : inode->i_mapping;
12131213
struct dnode_of_data dn;
1214-
struct folio *folio;
1214+
struct folio *folio, *efolio;
12151215
struct f2fs_io_info fio = {
12161216
.sbi = sbi,
12171217
.ino = inode->i_ino,
@@ -1266,14 +1266,15 @@ static int ra_data_block(struct inode *inode, pgoff_t index)
12661266

12671267
f2fs_wait_on_block_writeback(inode, dn.data_blkaddr);
12681268

1269-
fio.encrypted_page = f2fs_pagecache_get_page(META_MAPPING(sbi),
1270-
dn.data_blkaddr,
1269+
efolio = f2fs_filemap_get_folio(META_MAPPING(sbi), dn.data_blkaddr,
12711270
FGP_LOCK | FGP_CREAT, GFP_NOFS);
1272-
if (!fio.encrypted_page) {
1273-
err = -ENOMEM;
1271+
if (IS_ERR(efolio)) {
1272+
err = PTR_ERR(efolio);
12741273
goto put_folio;
12751274
}
12761275

1276+
fio.encrypted_page = &efolio->page;
1277+
12771278
err = f2fs_submit_page_bio(&fio);
12781279
if (err)
12791280
goto put_encrypted_page;
@@ -1313,7 +1314,7 @@ static int move_data_block(struct inode *inode, block_t bidx,
13131314
struct dnode_of_data dn;
13141315
struct f2fs_summary sum;
13151316
struct node_info ni;
1316-
struct folio *folio, *mfolio;
1317+
struct folio *folio, *mfolio, *efolio;
13171318
block_t newaddr;
13181319
int err = 0;
13191320
bool lfs_mode = f2fs_lfs_mode(fio.sbi);
@@ -1407,14 +1408,16 @@ static int move_data_block(struct inode *inode, block_t bidx,
14071408
goto up_out;
14081409
}
14091410

1410-
fio.encrypted_page = f2fs_pagecache_get_page(META_MAPPING(fio.sbi),
1411-
newaddr, FGP_LOCK | FGP_CREAT, GFP_NOFS);
1412-
if (!fio.encrypted_page) {
1413-
err = -ENOMEM;
1411+
efolio = f2fs_filemap_get_folio(META_MAPPING(fio.sbi), newaddr,
1412+
FGP_LOCK | FGP_CREAT, GFP_NOFS);
1413+
if (IS_ERR(efolio)) {
1414+
err = PTR_ERR(efolio);
14141415
f2fs_folio_put(mfolio, true);
14151416
goto recover_block;
14161417
}
14171418

1419+
fio.encrypted_page = &efolio->page;
1420+
14181421
/* write target block */
14191422
f2fs_wait_on_page_writeback(fio.encrypted_page, DATA, true, true);
14201423
memcpy(page_address(fio.encrypted_page),

0 commit comments

Comments
 (0)