| From: Christoph Hellwig <hch@lst.de> |
| Subject: omfs: remove ->writepage |
| Date: Fri, 2 Dec 2022 11:26:44 +0100 |
| |
| ->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 | 7 +------ |
| 1 file changed, 1 insertion(+), 6 deletions(-) |
| |
| --- a/fs/omfs/file.c~omfs-remove-writepage |
| +++ a/fs/omfs/file.c |
| @@ -294,11 +294,6 @@ static void omfs_readahead(struct readah |
| 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 om |
| .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, |
| }; |
| |
| _ |