[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ca0a1d1a-106a-432a-be01-d5b3b5d697ea@huawei.com>
Date: Wed, 21 Aug 2024 19:01:08 +0800
From: Li Zetao <lizetao1@...wei.com>
To: Chao Yu <chao@...nel.org>, <jaegeuk@...nel.org>
CC: <linux-f2fs-devel@...ts.sourceforge.net>, <linux-kernel@...r.kernel.org>,
Matthew Wilcox <willy@...radead.org>
Subject: Re: [PATCH v3 1/9] f2fs: convert f2fs_submit_page_read() to use folio
Hi,
在 2024/8/20 22:54, Chao Yu 写道:
> Convert to use folio, so that we can get rid of 'page->index' to
> prepare for removal of 'index' field in structure page [1].
>
> [1] https://lore.kernel.org/all/Zp8fgUSIBGQ1TN0D@casper.infradead.org/
>
> Cc: Matthew Wilcox <willy@...radead.org>
> Signed-off-by: Chao Yu <chao@...nel.org>
> ---
> fs/f2fs/data.c | 12 ++++++------
> 1 file changed, 6 insertions(+), 6 deletions(-)
>
> diff --git a/fs/f2fs/data.c b/fs/f2fs/data.c
> index 4f4e76c33611..0655fddfc4ba 100644
> --- a/fs/f2fs/data.c
> +++ b/fs/f2fs/data.c
> @@ -1086,7 +1086,7 @@ static struct bio *f2fs_grab_read_bio(struct inode *inode, block_t blkaddr,
> }
>
> /* This can handle encryption stuffs */
> -static int f2fs_submit_page_read(struct inode *inode, struct page *page,
> +static int f2fs_submit_page_read(struct inode *inode, struct folio *folio,
> block_t blkaddr, blk_opf_t op_flags,
> bool for_write)
> {
> @@ -1094,14 +1094,14 @@ static int f2fs_submit_page_read(struct inode *inode, struct page *page,
> struct bio *bio;
>
> bio = f2fs_grab_read_bio(inode, blkaddr, 1, op_flags,
> - page->index, for_write);
> + folio->index, for_write);
> if (IS_ERR(bio))
> return PTR_ERR(bio);
>
> /* wait for GCed page writeback via META_MAPPING */
> f2fs_wait_on_block_writeback(inode, blkaddr);
>
> - if (bio_add_page(bio, page, PAGE_SIZE, 0) < PAGE_SIZE) {
> + if (!bio_add_folio(bio, folio, PAGE_SIZE, 0)) {
> iostat_update_and_unbind_ctx(bio);
> if (bio->bi_private)
> mempool_free(bio->bi_private, bio_post_read_ctx_pool);
> @@ -1269,7 +1269,7 @@ struct page *f2fs_get_read_data_page(struct inode *inode, pgoff_t index,
> return page;
> }
>
> - err = f2fs_submit_page_read(inode, page, dn.data_blkaddr,
> + err = f2fs_submit_page_read(inode, page_folio(page), dn.data_blkaddr,
> op_flags, for_write);
> if (err)
> goto put_err;
> @@ -3668,8 +3668,8 @@ static int f2fs_write_begin(struct file *file, struct address_space *mapping,
> goto fail;
> }
> err = f2fs_submit_page_read(use_cow ?
> - F2FS_I(inode)->cow_inode : inode, page,
> - blkaddr, 0, true);
> + F2FS_I(inode)->cow_inode : inode,
> + page_folio(page), blkaddr, 0, true);
> if (err)
> goto fail;
>
I have tested this patchset with fsstress and got any issue.
Reviewed-by: Li Zetao <lizetao1@...wei.com>
Thanks,
Li Zetao.
Powered by blists - more mailing lists