f2fs: Pass a folio to ino_of_node()

All callers have a folio so pass it in.  Also make the argument const
as the function does not modify it.

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:07 +01:00
committed by Jaegeuk Kim
parent 9d71780716
commit 28fde0d7ff
5 changed files with 26 additions and 26 deletions

View File

@@ -574,7 +574,7 @@ static bool __has_merged_page(struct bio *bio, struct inode *inode,
return true;
if (page && page == &target->page)
return true;
if (ino && ino == ino_of_node(&target->page))
if (ino && ino == ino_of_node(target))
return true;
}

View File

@@ -178,7 +178,7 @@ bool f2fs_inode_chksum_verify(struct f2fs_sb_info *sbi, struct folio *folio)
if (provided != calculated)
f2fs_warn(sbi, "checksum invalid, nid = %lu, ino_of_node = %x, %x vs. %x",
folio->index, ino_of_node(&folio->page),
folio->index, ino_of_node(folio),
provided, calculated);
return provided == calculated;
@@ -280,14 +280,14 @@ static bool sanity_check_inode(struct inode *inode, struct folio *node_folio)
return false;
}
if (ino_of_node(&node_folio->page) != nid_of_node(&node_folio->page)) {
if (ino_of_node(node_folio) != nid_of_node(&node_folio->page)) {
f2fs_warn(sbi, "%s: corrupted inode footer i_ino=%lx, ino,nid: [%u, %u] run fsck to fix.",
__func__, inode->i_ino,
ino_of_node(&node_folio->page), nid_of_node(&node_folio->page));
ino_of_node(node_folio), nid_of_node(&node_folio->page));
return false;
}
if (ino_of_node(&node_folio->page) == fi->i_xattr_nid) {
if (ino_of_node(node_folio) == fi->i_xattr_nid) {
f2fs_warn(sbi, "%s: corrupted inode i_ino=%lx, xnid=%x, run fsck to fix.",
__func__, inode->i_ino, fi->i_xattr_nid);
return false;

View File

@@ -974,9 +974,9 @@ static int truncate_dnode(struct dnode_of_data *dn)
else if (IS_ERR(folio))
return PTR_ERR(folio);
if (IS_INODE(&folio->page) || ino_of_node(&folio->page) != dn->inode->i_ino) {
if (IS_INODE(&folio->page) || ino_of_node(folio) != dn->inode->i_ino) {
f2fs_err(sbi, "incorrect node reference, ino: %lu, nid: %u, ino_of_node: %u",
dn->inode->i_ino, dn->nid, ino_of_node(&folio->page));
dn->inode->i_ino, dn->nid, ino_of_node(folio));
set_sbi_flag(sbi, SBI_NEED_FSCK);
f2fs_handle_error(sbi, ERROR_INVALID_NODE_REFERENCE);
f2fs_folio_put(folio, true);
@@ -1484,7 +1484,7 @@ static int sanity_check_node_footer(struct f2fs_sb_info *sbi,
time_to_inject(sbi, FAULT_INCONSISTENT_FOOTER))) {
f2fs_warn(sbi, "inconsistent node block, node_type:%d, nid:%lu, "
"node_footer[nid:%u,ino:%u,ofs:%u,cpver:%llu,blkaddr:%u]",
ntype, nid, nid_of_node(page), ino_of_node(page),
ntype, nid, nid_of_node(page), ino_of_node(folio),
ofs_of_node(page), cpver_of_node(page),
next_blkaddr_of_node(folio));
set_sbi_flag(sbi, SBI_NEED_FSCK);
@@ -1633,7 +1633,7 @@ static struct folio *last_fsync_dnode(struct f2fs_sb_info *sbi, nid_t ino)
if (!IS_DNODE(&folio->page) || !is_cold_node(&folio->page))
continue;
if (ino_of_node(&folio->page) != ino)
if (ino_of_node(folio) != ino)
continue;
folio_lock(folio);
@@ -1643,7 +1643,7 @@ continue_unlock:
folio_unlock(folio);
continue;
}
if (ino_of_node(&folio->page) != ino)
if (ino_of_node(folio) != ino)
goto continue_unlock;
if (!folio_test_dirty(folio)) {
@@ -1673,7 +1673,7 @@ static bool __write_node_folio(struct folio *folio, bool atomic, bool *submitted
struct node_info ni;
struct f2fs_io_info fio = {
.sbi = sbi,
.ino = ino_of_node(&folio->page),
.ino = ino_of_node(folio),
.type = NODE,
.op = REQ_OP_WRITE,
.op_flags = wbc_to_write_flags(wbc),
@@ -1842,7 +1842,7 @@ retry:
if (!IS_DNODE(&folio->page) || !is_cold_node(&folio->page))
continue;
if (ino_of_node(&folio->page) != ino)
if (ino_of_node(folio) != ino)
continue;
folio_lock(folio);
@@ -1852,7 +1852,7 @@ continue_unlock:
folio_unlock(folio);
continue;
}
if (ino_of_node(&folio->page) != ino)
if (ino_of_node(folio) != ino)
goto continue_unlock;
if (!folio_test_dirty(folio) && folio != last_folio) {
@@ -1948,7 +1948,7 @@ static bool flush_dirty_inode(struct folio *folio)
{
struct f2fs_sb_info *sbi = F2FS_F_SB(folio);
struct inode *inode;
nid_t ino = ino_of_node(&folio->page);
nid_t ino = ino_of_node(folio);
inode = find_inode_nowait(sbi->sb, ino, f2fs_match_ino, NULL);
if (!inode)
@@ -1991,7 +1991,7 @@ void f2fs_flush_inline_data(struct f2fs_sb_info *sbi)
if (page_private_inline(&folio->page)) {
clear_page_private_inline(&folio->page);
folio_unlock(folio);
flush_inline_data(sbi, ino_of_node(&folio->page));
flush_inline_data(sbi, ino_of_node(folio));
continue;
}
unlock:
@@ -2073,7 +2073,7 @@ continue_unlock:
if (page_private_inline(&folio->page)) {
clear_page_private_inline(&folio->page);
folio_unlock(folio);
flush_inline_data(sbi, ino_of_node(&folio->page));
flush_inline_data(sbi, ino_of_node(folio));
goto lock_node;
}
@@ -2804,7 +2804,7 @@ recover_xnid:
int f2fs_recover_inode_page(struct f2fs_sb_info *sbi, struct folio *folio)
{
struct f2fs_inode *src, *dst;
nid_t ino = ino_of_node(&folio->page);
nid_t ino = ino_of_node(folio);
struct node_info old_ni, new_ni;
struct folio *ifolio;
int err;

View File

@@ -243,9 +243,9 @@ static inline void set_to_next_nat(struct f2fs_nm_info *nm_i, nid_t start_nid)
#endif
}
static inline nid_t ino_of_node(struct page *node_page)
static inline nid_t ino_of_node(const struct folio *node_folio)
{
struct f2fs_node *rn = F2FS_NODE(node_page);
struct f2fs_node *rn = F2FS_NODE(&node_folio->page);
return le32_to_cpu(rn->footer.ino);
}

View File

@@ -233,7 +233,7 @@ out:
else
name = raw_inode->i_name;
f2fs_notice(F2FS_I_SB(inode), "%s: ino = %x, name = %s, dir = %lx, err = %d",
__func__, ino_of_node(&ifolio->page), name,
__func__, ino_of_node(ifolio), name,
IS_ERR(dir) ? 0 : dir->i_ino, err);
return err;
}
@@ -336,7 +336,7 @@ static int recover_inode(struct inode *inode, struct folio *folio)
name = F2FS_INODE(folio)->i_name;
f2fs_notice(F2FS_I_SB(inode), "recover_inode: ino = %x, name = %s, inline = %x",
ino_of_node(&folio->page), name, raw->i_inline);
ino_of_node(folio), name, raw->i_inline);
return 0;
}
@@ -432,7 +432,7 @@ static int find_fsync_dnodes(struct f2fs_sb_info *sbi, struct list_head *head,
if (!is_fsync_dnode(&folio->page))
goto next;
entry = get_fsync_inode(head, ino_of_node(&folio->page));
entry = get_fsync_inode(head, ino_of_node(folio));
if (!entry) {
bool quota_inode = false;
@@ -451,7 +451,7 @@ static int find_fsync_dnodes(struct f2fs_sb_info *sbi, struct list_head *head,
* CP | dnode(F) | inode(DF)
* For this case, we should not give up now.
*/
entry = add_fsync_inode(sbi, head, ino_of_node(&folio->page),
entry = add_fsync_inode(sbi, head, ino_of_node(folio),
quota_inode);
if (IS_ERR(entry)) {
err = PTR_ERR(entry);
@@ -553,7 +553,7 @@ got_it:
return PTR_ERR(node_folio);
offset = ofs_of_node(&node_folio->page);
ino = ino_of_node(&node_folio->page);
ino = ino_of_node(node_folio);
f2fs_folio_put(node_folio, true);
if (ino != dn->inode->i_ino) {
@@ -668,7 +668,7 @@ retry_dn:
if (err)
goto err;
f2fs_bug_on(sbi, ni.ino != ino_of_node(&folio->page));
f2fs_bug_on(sbi, ni.ino != ino_of_node(folio));
if (ofs_of_node(&dn.node_folio->page) != ofs_of_node(&folio->page)) {
f2fs_warn(sbi, "Inconsistent ofs_of_node, ino:%lu, ofs:%u, %u",
@@ -812,7 +812,7 @@ static int recover_data(struct f2fs_sb_info *sbi, struct list_head *inode_list,
}
recoverable_dnode++;
entry = get_fsync_inode(inode_list, ino_of_node(&folio->page));
entry = get_fsync_inode(inode_list, ino_of_node(folio));
if (!entry)
goto next;
fsynced_dnode++;