OSDN Git Service

omfs: remove ->writepage
authorChristoph Hellwig <hch@lst.de>
Fri, 2 Dec 2022 10:26:44 +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-8-hch@lst.de
Signed-off-by: Christoph Hellwig <hch@lst.de>
Acked-by: Bob Copeland <me@bobcopeland.com>
Acked-by: Johannes Weiner <hannes@cmpxchg.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
fs/omfs/file.c

index fa7fe23..3a5b4b8 100644 (file)
@@ -294,11 +294,6 @@ static void omfs_readahead(struct readahead_control *rac)
        mpage_readahead(rac, omfs_get_block);
 }
 
-static int omfs_writepage(struct page *page, struct writeback_control *wbc)
-{
-       return block_write_full_page(page, omfs_get_block, wbc);
-}
-
 static int
 omfs_writepages(struct address_space *mapping, struct writeback_control *wbc)
 {
@@ -375,10 +370,10 @@ const struct address_space_operations omfs_aops = {
        .invalidate_folio = block_invalidate_folio,
        .read_folio = omfs_read_folio,
        .readahead = omfs_readahead,
-       .writepage = omfs_writepage,
        .writepages = omfs_writepages,
        .write_begin = omfs_write_begin,
        .write_end = generic_write_end,
        .bmap = omfs_bmap,
+       .migrate_folio = buffer_migrate_folio,
 };