`f2fs_is_compressed_page` now already accept a folio as a parameter.So the name now is confusing. Rename it to `f2fs_is_compressed_folio`. If a folio has f2fs_iomap_folio_state then it must not be a compressed folio.
Signed-off-by: Nanzhe Zhao <nzz...@126.com> --- fs/f2fs/compress.c | 11 ++++++----- fs/f2fs/data.c | 10 +++++----- fs/f2fs/f2fs.h | 7 +++++-- 3 files changed, 16 insertions(+), 12 deletions(-) diff --git a/fs/f2fs/compress.c b/fs/f2fs/compress.c index 6ad8d3bc6df7..627013ef856c 100644 --- a/fs/f2fs/compress.c +++ b/fs/f2fs/compress.c @@ -71,13 +71,14 @@ static pgoff_t start_idx_of_cluster(struct compress_ctx *cc) return cc->cluster_idx << cc->log_cluster_size; } -bool f2fs_is_compressed_page(struct folio *folio) +bool f2fs_is_compressed_folio(struct folio *folio) { - if (!folio->private) + if (!folio_test_private(folio)) return false; if (folio_test_f2fs_nonpointer(folio)) return false; - + if (folio_get_f2fs_ifs(folio)) /*compressed folio current don't support higer order*/ + return false; f2fs_bug_on(F2FS_F_SB(folio), *((u32 *)folio->private) != F2FS_COMPRESSED_PAGE_MAGIC); return true; @@ -1483,8 +1484,8 @@ void f2fs_compress_write_end_io(struct bio *bio, struct folio *folio) struct page *page = &folio->page; struct f2fs_sb_info *sbi = bio->bi_private; struct compress_io_ctx *cic = folio->private; - enum count_type type = WB_DATA_TYPE(folio, - f2fs_is_compressed_page(folio)); + enum count_type type = + WB_DATA_TYPE(folio, f2fs_is_compressed_folio(folio)); int i; if (unlikely(bio->bi_status != BLK_STS_OK)) diff --git a/fs/f2fs/data.c b/fs/f2fs/data.c index 5589280294c1..a9dc2572bdc4 100644 --- a/fs/f2fs/data.c +++ b/fs/f2fs/data.c @@ -142,7 +142,7 @@ static void f2fs_finish_read_bio(struct bio *bio, bool in_task) bio_for_each_folio_all(fi, bio) { struct folio *folio = fi.folio; - if (f2fs_is_compressed_page(folio)) { + if (f2fs_is_compressed_folio(folio)) { if (ctx && !ctx->decompression_attempted) f2fs_end_read_compressed_page(folio, true, 0, in_task); @@ -186,7 +186,7 @@ static void f2fs_verify_bio(struct work_struct *work) bio_for_each_folio_all(fi, bio) { struct folio *folio = fi.folio; - if (!f2fs_is_compressed_page(folio) && + if (!f2fs_is_compressed_folio(folio) && !fsverity_verify_page(&folio->page)) { bio->bi_status = BLK_STS_IOERR; break; @@ -239,7 +239,7 @@ static void f2fs_handle_step_decompress(struct bio_post_read_ctx *ctx, bio_for_each_folio_all(fi, ctx->bio) { struct folio *folio = fi.folio; - if (f2fs_is_compressed_page(folio)) + if (f2fs_is_compressed_folio(folio)) f2fs_end_read_compressed_page(folio, false, blkaddr, in_task); else @@ -344,7 +344,7 @@ static void f2fs_write_end_io(struct bio *bio) } #ifdef CONFIG_F2FS_FS_COMPRESSION - if (f2fs_is_compressed_page(folio)) { + if (f2fs_is_compressed_folio(folio)) { f2fs_compress_write_end_io(bio, folio); continue; } @@ -568,7 +568,7 @@ static bool __has_merged_page(struct bio *bio, struct inode *inode, if (IS_ERR(target)) continue; } - if (f2fs_is_compressed_page(target)) { + if (f2fs_is_compressed_folio(target)) { target = f2fs_compress_control_folio(target); if (IS_ERR(target)) continue; diff --git a/fs/f2fs/f2fs.h b/fs/f2fs/f2fs.h index a14bef4dc394..9f88be53174b 100644 --- a/fs/f2fs/f2fs.h +++ b/fs/f2fs/f2fs.h @@ -4677,7 +4677,7 @@ enum cluster_check_type { CLUSTER_COMPR_BLKS, /* return # of compressed blocks in a cluster */ CLUSTER_RAW_BLKS /* return # of raw blocks in a cluster */ }; -bool f2fs_is_compressed_page(struct folio *folio); +bool f2fs_is_compressed_folio(struct folio *folio); struct folio *f2fs_compress_control_folio(struct folio *folio); int f2fs_prepare_compress_overwrite(struct inode *inode, struct page **pagep, pgoff_t index, void **fsdata); @@ -4744,7 +4744,10 @@ void f2fs_invalidate_compress_pages(struct f2fs_sb_info *sbi, nid_t ino); sbi->compr_saved_block += diff; \ } while (0) #else -static inline bool f2fs_is_compressed_page(struct folio *folio) { return false; } +static inline bool f2fs_is_compressed_folio(struct folio *folio) +{ + return false; +} static inline bool f2fs_is_compress_backend_ready(struct inode *inode) { if (!f2fs_compressed_file(inode)) -- 2.34.1 _______________________________________________ Linux-f2fs-devel mailing list Linux-f2fs-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel