f2fs: convert f2fs_clear_page_cache_dirty_tag() to use folio
authorChao Yu <chao@kernel.org>
Tue, 13 Aug 2024 14:13:25 +0000 (22:13 +0800)
committerJaegeuk Kim <jaegeuk@kernel.org>
Fri, 6 Sep 2024 23:04:47 +0000 (23:04 +0000)
Convert to use folio, so that we can get rid of 'page->index' to
prepare for removal of 'index' field in structure page [1].

[1] https://lore.kernel.org/all/Zp8fgUSIBGQ1TN0D@casper.infradead.org/

Cc: Matthew Wilcox <willy@infradead.org>
Signed-off-by: Chao Yu <chao@kernel.org>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
fs/f2fs/data.c
fs/f2fs/dir.c
fs/f2fs/f2fs.h
fs/f2fs/inline.c
fs/f2fs/node.c

index 100b6526717fe88c4dfe7d933b2eb51a58c1627f..0df5a0c66edee189ffeff1576dd3be64257b35af 100644 (file)
@@ -4117,9 +4117,8 @@ const struct address_space_operations f2fs_dblock_aops = {
        .swap_deactivate = f2fs_swap_deactivate,
 };
 
-void f2fs_clear_page_cache_dirty_tag(struct page *page)
+void f2fs_clear_page_cache_dirty_tag(struct folio *folio)
 {
-       struct folio *folio = page_folio(page);
        struct address_space *mapping = folio->mapping;
        unsigned long flags;
 
index 14900ca8a9ffbd7028f252d25fcc02992a038994..5fcc952107e9ce36e054da00b619dfc5d73ac12f 100644 (file)
@@ -868,7 +868,7 @@ void f2fs_delete_entry(struct f2fs_dir_entry *dentry, struct page *page,
 
        if (bit_pos == NR_DENTRY_IN_BLOCK &&
                !f2fs_truncate_hole(dir, page->index, page->index + 1)) {
-               f2fs_clear_page_cache_dirty_tag(page);
+               f2fs_clear_page_cache_dirty_tag(page_folio(page));
                clear_page_dirty_for_io(page);
                ClearPageUptodate(page);
                clear_page_private_all(page);
index 569d9d2faae15d2e93906851cfc81b43921cd091..fafc648a66428370b952347d5586d7c671b3fa91 100644 (file)
@@ -3890,7 +3890,7 @@ void f2fs_write_failed(struct inode *inode, loff_t to);
 void f2fs_invalidate_folio(struct folio *folio, size_t offset, size_t length);
 bool f2fs_release_folio(struct folio *folio, gfp_t wait);
 bool f2fs_overwrite_io(struct inode *inode, loff_t pos, size_t len);
-void f2fs_clear_page_cache_dirty_tag(struct page *page);
+void f2fs_clear_page_cache_dirty_tag(struct folio *folio);
 int f2fs_init_post_read_processing(void);
 void f2fs_destroy_post_read_processing(void);
 int f2fs_init_post_read_wq(struct f2fs_sb_info *sbi);
index d76a3bed70937bebf8cae27de7b385fad85ac557..98d122164cd10700a265c0f41742c3070d4b8398 100644 (file)
@@ -281,7 +281,7 @@ int f2fs_write_inline_data(struct inode *inode, struct page *page)
                         page, 0, MAX_INLINE_DATA(inode));
        set_page_dirty(ipage);
 
-       f2fs_clear_page_cache_dirty_tag(page);
+       f2fs_clear_page_cache_dirty_tag(page_folio(page));
 
        set_inode_flag(inode, FI_APPEND_WRITE);
        set_inode_flag(inode, FI_DATA_EXIST);
index 9e7a6e21f30c715bcf94ead564733fd73f0a43ef..20518c12f5b77c64b06a1f4f54d92bb048376e6e 100644 (file)
@@ -123,7 +123,7 @@ bool f2fs_available_free_memory(struct f2fs_sb_info *sbi, int type)
 static void clear_node_page_dirty(struct page *page)
 {
        if (PageDirty(page)) {
-               f2fs_clear_page_cache_dirty_tag(page);
+               f2fs_clear_page_cache_dirty_tag(page_folio(page));
                clear_page_dirty_for_io(page);
                dec_page_count(F2FS_P_SB(page), F2FS_DIRTY_NODES);
        }