Re: [PATCH 02/15] ubifs: Convert from writepage to writepages

Zhihao Cheng
2024-01-22T11:32:19Z

在 2024/1/21 7:08, Matthew Wilcox (Oracle) 写道:
> This is a simplistic conversion to separate out any effects of
> no longer having a writepage method.
>
> Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
> ---
> fs/ubifs/file.c | 12 ++++++++++--
> 1 file changed, 10 insertions(+), 2 deletions(-)
>

Reviewed-by: Zhihao Cheng <chengzhihao1@huawei.com>

> diff --git a/fs/ubifs/file.c b/fs/ubifs/file.c
> index 40a9b03ef821..007a73052561 100644
> --- a/fs/ubifs/file.c
> +++ b/fs/ubifs/file.c
> @@ -1006,8 +1006,10 @@ static int do_writepage(struct page *page, int len)
> * on the page lock and it would not write the truncated inode node to the
> * journal before we have finished.
> */
> -static int ubifs_writepage(struct page *page, struct writeback_control *wbc)
> +static int ubifs_writepage(struct folio *folio, struct writeback_control *wbc,
> + void *data)
> {
> + struct page *page = &folio->page;
> struct inode *inode = page->mapping->host;
> struct ubifs_info *c = inode->i_sb->s_fs_info;
> struct ubifs_inode *ui = ubifs_inode(inode);
> @@ -1079,6 +1081,12 @@ static int ubifs_writepage(struct page *page, struct writeback_control *wbc)
> return err;
> }
>
> +static int ubifs_writepages(struct address_space *mapping,
> + struct writeback_control *wbc)
> +{
> + return write_cache_pages(mapping, wbc, ubifs_writepage, NULL);
> +}
> +
> /**
> * do_attr_changes - change inode attributes.
> * @inode: inode to change attributes for
> @@ -1648,7 +1656,7 @@ static int ubifs_symlink_getattr(struct mnt_idmap *idmap,
>
> const struct address_space_operations ubifs_file_address_operations = {
> .read_folio = ubifs_read_folio,
> - .writepage = ubifs_writepage,
> + .writepages = ubifs_writepages,
> .write_begin = ubifs_write_begin,
> .write_end = ubifs_write_end,
> .invalidate_folio = ubifs_invalidate_folio,