]> git.proxmox.com Git - mirror_ubuntu-kernels.git/commitdiff
ntfs3: remove ->writepage
authorChristoph Hellwig <hch@lst.de>
Thu, 29 Dec 2022 16:10:28 +0000 (06:10 -1000)
committerAndrew Morton <akpm@linux-foundation.org>
Thu, 19 Jan 2023 01:12:51 +0000 (17:12 -0800)
->writepage is a very inefficient method to write back data, and only used
through write_cache_pages or a a fallback when no ->migrate_folio method
is present.

Set ->migrate_folio to the generic buffer_head based helper, and remove
the ->writepage implementation.

Link: https://lkml.kernel.org/r/20221229161031.391878-4-hch@lst.de
Signed-off-by: Christoph Hellwig <hch@lst.de>
Cc: Jan Kara <jack@suse.com>
Cc: Joel Becker <jlbec@evilplan.org>
Cc: Joseph Qi <joseph.qi@linux.alibaba.com>
Cc: Konstantin Komarov <almaz.alexandrovich@paragon-software.com>
Cc: Mark Fasheh <mark@fasheh.com>
Cc: Matthew Wilcox <willy@infradead.org>
Cc: Theodore Ts'o <tytso@mit.edu>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
fs/ntfs3/inode.c

index b6dad2da59501bb3af4229c04c9d744a1f1cbf3f..6b50b6e3237876d5c12fc93d6a15250beb1fb9c0 100644 (file)
@@ -832,26 +832,6 @@ out:
        return err;
 }
 
-static int ntfs_writepage(struct page *page, struct writeback_control *wbc)
-{
-       struct address_space *mapping = page->mapping;
-       struct inode *inode = mapping->host;
-       struct ntfs_inode *ni = ntfs_i(inode);
-       int err;
-
-       if (is_resident(ni)) {
-               ni_lock(ni);
-               err = attr_data_write_resident(ni, page);
-               ni_unlock(ni);
-               if (err != E_NTFS_NONRESIDENT) {
-                       unlock_page(page);
-                       return err;
-               }
-       }
-
-       return block_write_full_page(page, ntfs_get_block, wbc);
-}
-
 static int ntfs_resident_writepage(struct page *page,
                struct writeback_control *wbc, void *data)
 {
@@ -2083,13 +2063,13 @@ const struct inode_operations ntfs_link_inode_operations = {
 const struct address_space_operations ntfs_aops = {
        .read_folio     = ntfs_read_folio,
        .readahead      = ntfs_readahead,
-       .writepage      = ntfs_writepage,
        .writepages     = ntfs_writepages,
        .write_begin    = ntfs_write_begin,
        .write_end      = ntfs_write_end,
        .direct_IO      = ntfs_direct_IO,
        .bmap           = ntfs_bmap,
        .dirty_folio    = block_dirty_folio,
+       .migrate_folio  = buffer_migrate_folio,
        .invalidate_folio = block_invalidate_folio,
 };