Skip to content

Commit d6966e7

Browse files
Matthew Wilcox (Oracle)Jaegeuk Kim
authored andcommitted
f2fs: Pass a folio to WB_DATA_TYPE() and f2fs_is_cp_guaranteed()
All callers now have a folio so pass it in. Removes a call to compound_head(). Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Reviewed-by: Chao Yu <chao@kernel.org> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
1 parent fec9035 commit d6966e7

3 files changed

Lines changed: 9 additions & 10 deletions

File tree

fs/f2fs/compress.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1478,7 +1478,7 @@ void f2fs_compress_write_end_io(struct bio *bio, struct folio *folio)
14781478
struct page *page = &folio->page;
14791479
struct f2fs_sb_info *sbi = bio->bi_private;
14801480
struct compress_io_ctx *cic = folio->private;
1481-
enum count_type type = WB_DATA_TYPE(page,
1481+
enum count_type type = WB_DATA_TYPE(folio,
14821482
f2fs_is_compressed_page(page));
14831483
int i;
14841484

fs/f2fs/data.c

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -47,9 +47,8 @@ void f2fs_destroy_bioset(void)
4747
bioset_exit(&f2fs_bioset);
4848
}
4949

50-
bool f2fs_is_cp_guaranteed(const struct page *page)
50+
bool f2fs_is_cp_guaranteed(const struct folio *folio)
5151
{
52-
const struct folio *folio = page_folio(page);
5352
struct address_space *mapping = folio->mapping;
5453
struct inode *inode;
5554
struct f2fs_sb_info *sbi;
@@ -346,7 +345,7 @@ static void f2fs_write_end_io(struct bio *bio)
346345
}
347346
#endif
348347

349-
type = WB_DATA_TYPE(&folio->page, false);
348+
type = WB_DATA_TYPE(folio, false);
350349

351350
if (unlikely(bio->bi_status != BLK_STS_OK)) {
352351
mapping_set_error(folio->mapping, -EIO);
@@ -713,7 +712,7 @@ int f2fs_submit_page_bio(struct f2fs_io_info *fio)
713712
wbc_account_cgroup_owner(fio->io_wbc, fio_folio, PAGE_SIZE);
714713

715714
inc_page_count(fio->sbi, is_read_io(fio->op) ?
716-
__read_io_type(data_folio) : WB_DATA_TYPE(fio->page, false));
715+
__read_io_type(data_folio) : WB_DATA_TYPE(fio->folio, false));
717716

718717
if (is_read_io(bio_op(bio)))
719718
f2fs_submit_read_bio(fio->sbi, bio, fio->type);
@@ -914,7 +913,7 @@ int f2fs_merge_page_bio(struct f2fs_io_info *fio)
914913
if (fio->io_wbc)
915914
wbc_account_cgroup_owner(fio->io_wbc, folio, folio_size(folio));
916915

917-
inc_page_count(fio->sbi, WB_DATA_TYPE(&data_folio->page, false));
916+
inc_page_count(fio->sbi, WB_DATA_TYPE(data_folio, false));
918917

919918
*fio->last_block = fio->new_blkaddr;
920919
*fio->bio = bio;
@@ -989,7 +988,7 @@ void f2fs_submit_page_write(struct f2fs_io_info *fio)
989988
/* set submitted = true as a return value */
990989
fio->submitted = 1;
991990

992-
type = WB_DATA_TYPE(&bio_folio->page, fio->compressed_page);
991+
type = WB_DATA_TYPE(bio_folio, fio->compressed_page);
993992
inc_page_count(sbi, type);
994993

995994
if (io->bio &&

fs/f2fs/f2fs.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1123,8 +1123,8 @@ struct f2fs_sm_info {
11231123
* f2fs monitors the number of several block types such as on-writeback,
11241124
* dirty dentry blocks, dirty node blocks, and dirty meta blocks.
11251125
*/
1126-
#define WB_DATA_TYPE(p, f) \
1127-
(f || f2fs_is_cp_guaranteed(p) ? F2FS_WB_CP_DATA : F2FS_WB_DATA)
1126+
#define WB_DATA_TYPE(folio, f) \
1127+
(f || f2fs_is_cp_guaranteed(folio) ? F2FS_WB_CP_DATA : F2FS_WB_DATA)
11281128
enum count_type {
11291129
F2FS_DIRTY_DENTS,
11301130
F2FS_DIRTY_DATA,
@@ -3992,7 +3992,7 @@ void f2fs_init_ckpt_req_control(struct f2fs_sb_info *sbi);
39923992
*/
39933993
int __init f2fs_init_bioset(void);
39943994
void f2fs_destroy_bioset(void);
3995-
bool f2fs_is_cp_guaranteed(const struct page *page);
3995+
bool f2fs_is_cp_guaranteed(const struct folio *folio);
39963996
int f2fs_init_bio_entry_cache(void);
39973997
void f2fs_destroy_bio_entry_cache(void);
39983998
void f2fs_submit_read_bio(struct f2fs_sb_info *sbi, struct bio *bio,

0 commit comments

Comments
 (0)