aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthew Wilcox (Oracle) <willy@infradead.org>2025-07-08 18:03:30 +0100
committerJaegeuk Kim <jaegeuk@kernel.org>2025-07-22 15:56:50 +0000
commitfb92a5c9f89a4e5337768c7d2f374669e0ab454b (patch)
tree4f7afb466c9bf48d7b9e29375d60f1217810ff37
parentf2fs: Pass a folio to is_node() (diff)
downloadlinux-fb92a5c9f89a4e5337768c7d2f374669e0ab454b.tar.gz
linux-fb92a5c9f89a4e5337768c7d2f374669e0ab454b.zip
f2fs: Pass a folio to IS_DNODE()
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>
-rw-r--r--fs/f2fs/node.c15
-rw-r--r--fs/f2fs/node.h4
-rw-r--r--fs/f2fs/segment.c4
3 files changed, 11 insertions, 12 deletions
diff --git a/fs/f2fs/node.c b/fs/f2fs/node.c
index 6fc0a8de7158..dbc45b856ffa 100644
--- a/fs/f2fs/node.c
+++ b/fs/f2fs/node.c
@@ -312,8 +312,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);
+ return is_node_folio(folio) && IS_DNODE(folio) && is_cold_node(folio);
}
void f2fs_init_fsync_node_info(struct f2fs_sb_info *sbi)
@@ -1631,7 +1630,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))
+ if (!IS_DNODE(folio) || !is_cold_node(folio))
continue;
if (ino_of_node(folio) != ino)
continue;
@@ -1702,7 +1701,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))
+ IS_DNODE(folio) && is_cold_node(folio))
goto redirty_out;
/* get old block addr of this node page */
@@ -1840,7 +1839,7 @@ retry:
goto out;
}
- if (!IS_DNODE(&folio->page) || !is_cold_node(folio))
+ if (!IS_DNODE(folio) || !is_cold_node(folio))
continue;
if (ino_of_node(folio) != ino)
continue;
@@ -2040,12 +2039,12 @@ next_step:
* 1. dentry dnodes
* 2. file dnodes
*/
- if (step == 0 && IS_DNODE(&folio->page))
+ if (step == 0 && IS_DNODE(folio))
continue;
- if (step == 1 && (!IS_DNODE(&folio->page) ||
+ if (step == 1 && (!IS_DNODE(folio) ||
is_cold_node(folio)))
continue;
- if (step == 2 && (!IS_DNODE(&folio->page) ||
+ if (step == 2 && (!IS_DNODE(folio) ||
!is_cold_node(folio)))
continue;
lock_node:
diff --git a/fs/f2fs/node.h b/fs/f2fs/node.h
index 92e73cff0d21..1b57b61f911b 100644
--- a/fs/f2fs/node.h
+++ b/fs/f2fs/node.h
@@ -350,9 +350,9 @@ static inline bool is_recoverable_dnode(const struct folio *folio)
* `- indirect node ((6 + 2N) + (N - 1)(N + 1))
* `- direct node
*/
-static inline bool IS_DNODE(const struct page *node_page)
+static inline bool IS_DNODE(const struct folio *node_folio)
{
- unsigned int ofs = ofs_of_node(node_page);
+ unsigned int ofs = ofs_of_node(&node_folio->page);
if (f2fs_has_xattr_block(ofs))
return true;
diff --git a/fs/f2fs/segment.c b/fs/f2fs/segment.c
index 72b3448e88ce..2a6dcfba911f 100644
--- a/fs/f2fs/segment.c
+++ b/fs/f2fs/segment.c
@@ -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->folio))
+ if (IS_DNODE(fio->folio) && is_cold_node(fio->folio))
return CURSEG_WARM_NODE;
else
return CURSEG_COLD_NODE;
@@ -3677,7 +3677,7 @@ static int __get_segment_type_6(struct f2fs_io_info *fio)
return f2fs_rw_hint_to_seg_type(F2FS_I_SB(inode),
inode->i_write_hint);
} else {
- if (IS_DNODE(fio->page))
+ if (IS_DNODE(fio->folio))
return is_cold_node(fio->folio) ? CURSEG_WARM_NODE :
CURSEG_HOT_NODE;
return CURSEG_COLD_NODE;