jfs: remove ->writepage
authorChristoph Hellwig <hch@lst.de>
Fri, 2 Dec 2022 10:26:43 +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-7-hch@lst.de
Signed-off-by: Christoph Hellwig <hch@lst.de>
Acked-by: Dave Kleikamp <dave.kleikamp@oracle.com>
Acked-by: Johannes Weiner <hannes@cmpxchg.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
fs/jfs/inode.c

index d1ec920..8ac10e3 100644 (file)
@@ -264,11 +264,6 @@ int jfs_get_block(struct inode *ip, sector_t lblock,
        return rc;
 }
 
-static int jfs_writepage(struct page *page, struct writeback_control *wbc)
-{
-       return block_write_full_page(page, jfs_get_block, wbc);
-}
-
 static int jfs_writepages(struct address_space *mapping,
                        struct writeback_control *wbc)
 {
@@ -355,12 +350,12 @@ const struct address_space_operations jfs_aops = {
        .invalidate_folio = block_invalidate_folio,
        .read_folio     = jfs_read_folio,
        .readahead      = jfs_readahead,
-       .writepage      = jfs_writepage,
        .writepages     = jfs_writepages,
        .write_begin    = jfs_write_begin,
        .write_end      = jfs_write_end,
        .bmap           = jfs_bmap,
        .direct_IO      = jfs_direct_IO,
+       .migrate_folio  = buffer_migrate_folio,
 };
 
 /*