f2fs: Pass a folio to is_cold_node()

All callers now have a folio so pass it in.

Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
Reviewed-by: Chao Yu <chao@kernel.org>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
This commit is contained in:
Matthew Wilcox (Oracle) 2025-07-08 18:03:28 +01:00 committed by Jaegeuk Kim
parent 79d976a2e7
commit 1fd0dffdb4
4 changed files with 10 additions and 10 deletions

View File

@ -482,7 +482,7 @@ static int do_read_inode(struct inode *inode)
__recover_inline_status(inode, node_folio);
/* try to recover cold bit for non-dir inode */
if (!S_ISDIR(inode->i_mode) && !is_cold_node(&node_folio->page)) {
if (!S_ISDIR(inode->i_mode) && !is_cold_node(node_folio)) {
f2fs_folio_wait_writeback(node_folio, NODE, true, true);
set_cold_node(node_folio, false);
folio_mark_dirty(node_folio);

View File

@ -313,7 +313,7 @@ static unsigned int __gang_lookup_nat_set(struct f2fs_nm_info *nm_i,
bool f2fs_in_warm_node_list(struct f2fs_sb_info *sbi, struct folio *folio)
{
return is_node_folio(folio) && IS_DNODE(&folio->page) &&
is_cold_node(&folio->page);
is_cold_node(folio);
}
void f2fs_init_fsync_node_info(struct f2fs_sb_info *sbi)
@ -1631,7 +1631,7 @@ static struct folio *last_fsync_dnode(struct f2fs_sb_info *sbi, nid_t ino)
return ERR_PTR(-EIO);
}
if (!IS_DNODE(&folio->page) || !is_cold_node(&folio->page))
if (!IS_DNODE(&folio->page) || !is_cold_node(folio))
continue;
if (ino_of_node(folio) != ino)
continue;
@ -1702,7 +1702,7 @@ static bool __write_node_folio(struct folio *folio, bool atomic, bool *submitted
if (!is_sbi_flag_set(sbi, SBI_CP_DISABLED) &&
wbc->sync_mode == WB_SYNC_NONE &&
IS_DNODE(&folio->page) && is_cold_node(&folio->page))
IS_DNODE(&folio->page) && is_cold_node(folio))
goto redirty_out;
/* get old block addr of this node page */
@ -1840,7 +1840,7 @@ int f2fs_fsync_node_pages(struct f2fs_sb_info *sbi, struct inode *inode,
goto out;
}
if (!IS_DNODE(&folio->page) || !is_cold_node(&folio->page))
if (!IS_DNODE(&folio->page) || !is_cold_node(folio))
continue;
if (ino_of_node(folio) != ino)
continue;
@ -2043,10 +2043,10 @@ int f2fs_sync_node_pages(struct f2fs_sb_info *sbi,
if (step == 0 && IS_DNODE(&folio->page))
continue;
if (step == 1 && (!IS_DNODE(&folio->page) ||
is_cold_node(&folio->page)))
is_cold_node(folio)))
continue;
if (step == 2 && (!IS_DNODE(&folio->page) ||
!is_cold_node(&folio->page)))
!is_cold_node(folio)))
continue;
lock_node:
if (wbc->sync_mode == WB_SYNC_ALL)

View File

@ -403,7 +403,7 @@ static inline int is_node(const struct page *page, int type)
return le32_to_cpu(rn->footer.flag) & BIT(type);
}
#define is_cold_node(page) is_node(page, COLD_BIT_SHIFT)
#define is_cold_node(folio) is_node(&folio->page, COLD_BIT_SHIFT)
#define is_fsync_dnode(folio) is_node(&folio->page, FSYNC_BIT_SHIFT)
#define is_dent_dnode(folio) is_node(&folio->page, DENT_BIT_SHIFT)

View File

@ -3620,7 +3620,7 @@ static int __get_segment_type_4(struct f2fs_io_info *fio)
else
return CURSEG_COLD_DATA;
} else {
if (IS_DNODE(fio->page) && is_cold_node(fio->page))
if (IS_DNODE(fio->page) && is_cold_node(fio->folio))
return CURSEG_WARM_NODE;
else
return CURSEG_COLD_NODE;
@ -3678,7 +3678,7 @@ static int __get_segment_type_6(struct f2fs_io_info *fio)
inode->i_write_hint);
} else {
if (IS_DNODE(fio->page))
return is_cold_node(fio->page) ? CURSEG_WARM_NODE :
return is_cold_node(fio->folio) ? CURSEG_WARM_NODE :
CURSEG_HOT_NODE;
return CURSEG_COLD_NODE;
}