From: Matthew Wilcox (Oracle) Date: Fri, 7 Mar 2025 04:43:13 +0000 (-0500) Subject: writeback: Remove writeback_use_writepage() X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=288e6e88925adde73c7b08f35b5a32bd642f7b51;p=users%2Fwilly%2Fpagecache.git writeback: Remove writeback_use_writepage() The ->writepage operation is going away. Remove this alternative to calling ->writepages. Signed-off-by: Matthew Wilcox (Oracle) --- diff --git a/mm/page-writeback.c b/mm/page-writeback.c index 18456ddd463b1..3cf7ae45be583 100644 --- a/mm/page-writeback.c +++ b/mm/page-writeback.c @@ -2621,27 +2621,6 @@ int write_cache_pages(struct address_space *mapping, } EXPORT_SYMBOL(write_cache_pages); -static int writeback_use_writepage(struct address_space *mapping, - struct writeback_control *wbc) -{ - struct folio *folio = NULL; - struct blk_plug plug; - int err; - - blk_start_plug(&plug); - while ((folio = writeback_iter(mapping, wbc, folio, &err))) { - err = mapping->a_ops->writepage(&folio->page, wbc); - if (err == AOP_WRITEPAGE_ACTIVATE) { - folio_unlock(folio); - err = 0; - } - mapping_set_error(mapping, err); - } - blk_finish_plug(&plug); - - return err; -} - int do_writepages(struct address_space *mapping, struct writeback_control *wbc) { int ret; @@ -2652,14 +2631,11 @@ int do_writepages(struct address_space *mapping, struct writeback_control *wbc) wb = inode_to_wb_wbc(mapping->host, wbc); wb_bandwidth_estimate_start(wb); while (1) { - if (mapping->a_ops->writepages) { + if (mapping->a_ops->writepages) ret = mapping->a_ops->writepages(mapping, wbc); - } else if (mapping->a_ops->writepage) { - ret = writeback_use_writepage(mapping, wbc); - } else { + else /* deal with chardevs and other special files */ ret = 0; - } if (ret != -ENOMEM || wbc->sync_mode != WB_SYNC_ALL) break;