ubifs: Convert from writepage to writepages
authorMatthew Wilcox (Oracle) <willy@infradead.org>
Wed, 24 Jan 2024 17:52:45 +0000 (17:52 +0000)
committerRichard Weinberger <richard@nod.at>
Sun, 25 Feb 2024 20:07:59 +0000 (21:07 +0100)
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>
Reviewed-by: Zhihao Cheng <chengzhihao1@huawei.com>
Signed-off-by: Richard Weinberger <richard@nod.at>
fs/ubifs/file.c

index d0694b83dd02c5afab2ea99974af2ad9b09c4706..2022a31006df5374ea22e792199c5a7bf4fe2f65 100644 (file)
@@ -1001,8 +1001,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);
@@ -1074,6 +1076,12 @@ out_unlock:
        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
@@ -1643,7 +1651,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,