hpfs: remove ->writepage
authorChristoph Hellwig <hch@lst.de>
Fri, 2 Dec 2022 10:26:42 +0000 (11:26 +0100)
committerAndrew Morton <akpm@linux-foundation.org>
Mon, 12 Dec 2022 02:12:18 +0000 (18: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/20221202102644.770505-6-hch@lst.de
Signed-off-by: Christoph Hellwig <hch@lst.de>
Acked-by: Johannes Weiner <hannes@cmpxchg.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
fs/hpfs/file.c

index f7547a6..88952d4 100644 (file)
@@ -163,11 +163,6 @@ static int hpfs_read_folio(struct file *file, struct folio *folio)
        return mpage_read_folio(folio, hpfs_get_block);
 }
 
-static int hpfs_writepage(struct page *page, struct writeback_control *wbc)
-{
-       return block_write_full_page(page, hpfs_get_block, wbc);
-}
-
 static void hpfs_readahead(struct readahead_control *rac)
 {
        mpage_readahead(rac, hpfs_get_block);
@@ -248,12 +243,12 @@ const struct address_space_operations hpfs_aops = {
        .dirty_folio    = block_dirty_folio,
        .invalidate_folio = block_invalidate_folio,
        .read_folio = hpfs_read_folio,
-       .writepage = hpfs_writepage,
        .readahead = hpfs_readahead,
        .writepages = hpfs_writepages,
        .write_begin = hpfs_write_begin,
        .write_end = hpfs_write_end,
-       .bmap = _hpfs_bmap
+       .bmap = _hpfs_bmap,
+       .migrate_folio = buffer_migrate_folio,
 };
 
 const struct file_operations hpfs_file_ops =