OSDN Git Service

f2fs: Convert f2fs_set_meta_page_dirty to f2fs_dirty_meta_folio
authorMatthew Wilcox (Oracle) <willy@infradead.org>
Wed, 9 Feb 2022 20:22:06 +0000 (20:22 +0000)
committerMatthew Wilcox (Oracle) <willy@infradead.org>
Tue, 15 Mar 2022 12:34:38 +0000 (08:34 -0400)
Removes a call to __set_page_dirty_nobuffers().

Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
Tested-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
Acked-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
Tested-by: Mike Marshall <hubcap@omnibond.com> # orangefs
Tested-by: David Howells <dhowells@redhat.com> # afs
fs/f2fs/checkpoint.c

index 097d792..49100ae 100644 (file)
@@ -436,25 +436,26 @@ stop:
        return nwritten;
 }
 
-static int f2fs_set_meta_page_dirty(struct page *page)
+static bool f2fs_dirty_meta_folio(struct address_space *mapping,
+               struct folio *folio)
 {
-       trace_f2fs_set_page_dirty(page, META);
-
-       if (!PageUptodate(page))
-               SetPageUptodate(page);
-       if (!PageDirty(page)) {
-               __set_page_dirty_nobuffers(page);
-               inc_page_count(F2FS_P_SB(page), F2FS_DIRTY_META);
-               set_page_private_reference(page);
-               return 1;
+       trace_f2fs_set_page_dirty(&folio->page, META);
+
+       if (!folio_test_uptodate(folio))
+               folio_mark_uptodate(folio);
+       if (!folio_test_dirty(folio)) {
+               filemap_dirty_folio(mapping, folio);
+               inc_page_count(F2FS_P_SB(&folio->page), F2FS_DIRTY_META);
+               set_page_private_reference(&folio->page);
+               return true;
        }
-       return 0;
+       return false;
 }
 
 const struct address_space_operations f2fs_meta_aops = {
        .writepage      = f2fs_write_meta_page,
        .writepages     = f2fs_write_meta_pages,
-       .set_page_dirty = f2fs_set_meta_page_dirty,
+       .dirty_folio    = f2fs_dirty_meta_folio,
        .invalidate_folio = f2fs_invalidate_folio,
        .releasepage    = f2fs_release_page,
 #ifdef CONFIG_MIGRATION