nilfs2: convert nilfs_writepage() to use a folio
authorMatthew Wilcox (Oracle) <willy@infradead.org>
Tue, 14 Nov 2023 08:44:22 +0000 (17:44 +0900)
committerAndrew Morton <akpm@linux-foundation.org>
Mon, 11 Dec 2023 01:21:27 +0000 (17:21 -0800)
Convert the incoming page to a folio.  Replaces three calls to
compound_head() with one.

Link: https://lkml.kernel.org/r/20231114084436.2755-7-konishi.ryusuke@gmail.com
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
Signed-off-by: Ryusuke Konishi <konishi.ryusuke@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
fs/nilfs2/inode.c

index f861f3a0bf5cf244c40a70b0d111d0b153a42ee9..c7ec56358a793e0665bce59bf96705c9e42c7ac7 100644 (file)
@@ -175,7 +175,8 @@ static int nilfs_writepages(struct address_space *mapping,
 
 static int nilfs_writepage(struct page *page, struct writeback_control *wbc)
 {
-       struct inode *inode = page->mapping->host;
+       struct folio *folio = page_folio(page);
+       struct inode *inode = folio->mapping->host;
        int err;
 
        if (sb_rdonly(inode->i_sb)) {
@@ -186,12 +187,12 @@ static int nilfs_writepage(struct page *page, struct writeback_control *wbc)
                 * So, here we simply discard this dirty page.
                 */
                nilfs_clear_dirty_page(page, false);
-               unlock_page(page);
+               folio_unlock(folio);
                return -EROFS;
        }
 
-       redirty_page_for_writepage(wbc, page);
-       unlock_page(page);
+       folio_redirty_for_writepage(wbc, folio);
+       folio_unlock(folio);
 
        if (wbc->sync_mode == WB_SYNC_ALL) {
                err = nilfs_construct_segment(inode->i_sb);