]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
ntfs3: stop using write_cache_pages
authorChristoph Hellwig <hch@lst.de>
Mon, 18 Aug 2025 06:10:08 +0000 (08:10 +0200)
committerKonstantin Komarov <almaz.alexandrovich@paragon-software.com>
Wed, 10 Sep 2025 09:01:41 +0000 (11:01 +0200)
Stop using the obsolete write_cache_pages and use writeback_iter directly.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Konstantin Komarov <almaz.alexandrovich@paragon-software.com>
fs/ntfs3/inode.c

index b08b0091216534d9faa09b92dc770a135fb73ed8..3959f23c487a2c8ef0875bdf8a54c78851190d53 100644 (file)
@@ -872,9 +872,9 @@ out:
 }
 
 static int ntfs_resident_writepage(struct folio *folio,
-                                  struct writeback_control *wbc, void *data)
+                                  struct writeback_control *wbc)
 {
-       struct address_space *mapping = data;
+       struct address_space *mapping = folio->mapping;
        struct inode *inode = mapping->host;
        struct ntfs_inode *ni = ntfs_i(inode);
        int ret;
@@ -908,9 +908,14 @@ static int ntfs_writepages(struct address_space *mapping,
        if (unlikely(ntfs3_forced_shutdown(inode->i_sb)))
                return -EIO;
 
-       if (is_resident(ntfs_i(inode)))
-               return write_cache_pages(mapping, wbc, ntfs_resident_writepage,
-                                        mapping);
+       if (is_resident(ntfs_i(inode))) {
+               struct folio *folio = NULL;
+               int error;
+
+               while ((folio = writeback_iter(mapping, wbc, folio, &error)))
+                       error = ntfs_resident_writepage(folio, wbc);
+               return error;
+       }
        return mpage_writepages(mapping, wbc, ntfs_get_block);
 }