From: Matthew Wilcox (Oracle) Date: Mon, 31 Mar 2025 20:11:09 +0000 (+0100) Subject: f2fs: Use a folio in f2fs_migrate_blocks() X-Git-Tag: v6.16-rc1~115^2~134 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=38f273c5049d5dd3b515200f7f57f1f632489076;p=thirdparty%2Fkernel%2Flinux.git f2fs: Use a folio in f2fs_migrate_blocks() Get a folio from the pagecache and use it throughout. Removes two calls to compound_head(). Signed-off-by: Matthew Wilcox (Oracle) Reviewed-by: Chao Yu Signed-off-by: Jaegeuk Kim --- diff --git a/fs/f2fs/data.c b/fs/f2fs/data.c index efc8e6c0b1d7b..5e6638189e78a 100644 --- a/fs/f2fs/data.c +++ b/fs/f2fs/data.c @@ -3878,18 +3878,18 @@ static int f2fs_migrate_blocks(struct inode *inode, block_t start_blk, set_inode_flag(inode, FI_SKIP_WRITES); for (blkofs = 0; blkofs <= blkofs_end; blkofs++) { - struct page *page; + struct folio *folio; unsigned int blkidx = secidx * blk_per_sec + blkofs; - page = f2fs_get_lock_data_page(inode, blkidx, true); - if (IS_ERR(page)) { + folio = f2fs_get_lock_data_folio(inode, blkidx, true); + if (IS_ERR(folio)) { f2fs_up_write(&sbi->pin_sem); - ret = PTR_ERR(page); + ret = PTR_ERR(folio); goto done; } - set_page_dirty(page); - f2fs_put_page(page, 1); + folio_mark_dirty(folio); + f2fs_folio_put(folio, true); } clear_inode_flag(inode, FI_SKIP_WRITES);