From: "Matthew Wilcox (Oracle)" <willy@infradead.org>
To: Jaegeuk Kim <jaegeuk@kernel.org>, Chao Yu <chao@kernel.org>
Cc: "Matthew Wilcox \(Oracle\)" <willy@infradead.org>,
linux-f2fs-devel@lists.sourceforge.net
Subject: [f2fs-dev] [PATCH 11/60] f2fs: Pass a folio to nid_of_node()
Date: Tue, 8 Jul 2025 18:03:08 +0100 [thread overview]
Message-ID: <20250708170359.111653-12-willy@infradead.org> (raw)
In-Reply-To: <20250708170359.111653-1-willy@infradead.org>
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>
---
fs/f2fs/data.c | 2 +-
fs/f2fs/inode.c | 4 ++--
fs/f2fs/node.c | 6 +++---
fs/f2fs/node.h | 4 ++--
4 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/fs/f2fs/data.c b/fs/f2fs/data.c
index b023d15b4555..5fc3d985c4e3 100644
--- a/fs/f2fs/data.c
+++ b/fs/f2fs/data.c
@@ -355,7 +355,7 @@ static void f2fs_write_end_io(struct bio *bio)
}
f2fs_bug_on(sbi, is_node_folio(folio) &&
- folio->index != nid_of_node(&folio->page));
+ folio->index != nid_of_node(folio));
dec_page_count(sbi, type);
if (f2fs_in_warm_node_list(sbi, folio))
diff --git a/fs/f2fs/inode.c b/fs/f2fs/inode.c
index eedc56a3561b..db4ccde3737a 100644
--- a/fs/f2fs/inode.c
+++ b/fs/f2fs/inode.c
@@ -280,10 +280,10 @@ static bool sanity_check_inode(struct inode *inode, struct folio *node_folio)
return false;
}
- if (ino_of_node(node_folio) != nid_of_node(&node_folio->page)) {
+ if (ino_of_node(node_folio) != nid_of_node(node_folio)) {
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), nid_of_node(&node_folio->page));
+ ino_of_node(node_folio), nid_of_node(node_folio));
return false;
}
diff --git a/fs/f2fs/node.c b/fs/f2fs/node.c
index fabcb3fa47cd..26d3bc7597d9 100644
--- a/fs/f2fs/node.c
+++ b/fs/f2fs/node.c
@@ -1477,14 +1477,14 @@ static int sanity_check_node_footer(struct f2fs_sb_info *sbi,
{
struct page *page = &folio->page;
- if (unlikely(nid != nid_of_node(page) ||
+ if (unlikely(nid != nid_of_node(folio) ||
(ntype == NODE_TYPE_INODE && !IS_INODE(page)) ||
(ntype == NODE_TYPE_XATTR &&
!f2fs_has_xattr_block(ofs_of_node(page))) ||
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(folio),
+ ntype, nid, nid_of_node(folio), ino_of_node(folio),
ofs_of_node(page), cpver_of_node(page),
next_blkaddr_of_node(folio));
set_sbi_flag(sbi, SBI_NEED_FSCK);
@@ -1706,7 +1706,7 @@ static bool __write_node_folio(struct folio *folio, bool atomic, bool *submitted
goto redirty_out;
/* get old block addr of this node page */
- nid = nid_of_node(&folio->page);
+ nid = nid_of_node(folio);
f2fs_bug_on(sbi, folio->index != nid);
if (f2fs_get_node_info(sbi, nid, &ni, !do_balance))
diff --git a/fs/f2fs/node.h b/fs/f2fs/node.h
index 6c4fc3449a68..c03cc1fdd136 100644
--- a/fs/f2fs/node.h
+++ b/fs/f2fs/node.h
@@ -249,9 +249,9 @@ static inline nid_t ino_of_node(const struct folio *node_folio)
return le32_to_cpu(rn->footer.ino);
}
-static inline nid_t nid_of_node(struct page *node_page)
+static inline nid_t nid_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.nid);
}
--
2.47.2
_______________________________________________
Linux-f2fs-devel mailing list
Linux-f2fs-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel
next prev parent reply other threads:[~2025-07-08 17:04 UTC|newest]
Thread overview: 65+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-07-08 17:02 [f2fs-dev] [PATCH 00/60] f2fs folio conversions for 6.17 Matthew Wilcox (Oracle)
2025-07-08 17:02 ` [f2fs-dev] [PATCH 01/60] f2fs: Pass a folio to recover_dentry() Matthew Wilcox (Oracle)
2025-07-08 17:02 ` [f2fs-dev] [PATCH 02/60] f2fs: Pass a folio to recover_inode() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 03/60] f2fs: Pass a folio to recover_quota_data() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 04/60] f2fs: Pass a folio to f2fs_recover_inode_page() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 05/60] f2fs: Pass a folio to sanity_check_extent_cache() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 06/60] f2fs: Pass a folio to sanity_check_inode() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 07/60] f2fs: Pass a folio to f2fs_sanity_check_inline_data() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 08/60] f2fs: Pass a folio to inode_has_blocks() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 09/60] f2fs: Pass a folio to F2FS_INODE() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 10/60] f2fs: Pass a folio to ino_of_node() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` Matthew Wilcox (Oracle) [this message]
2025-07-09 19:56 ` [f2fs-dev] [PATCH 11/60] f2fs: Pass a folio to nid_of_node() Jaegeuk Kim via Linux-f2fs-devel
2025-07-08 17:03 ` [f2fs-dev] [PATCH 12/60] f2fs: Pass a folio to is_recoverable_dnode() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 13/60] f2fs: Pass a folio to set_dentry_mark() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 14/60] f2fs: Pass a folio to set_fsync_mark() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 15/60] f2fs: Pass a folio to set_mark() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 16/60] f2fs: Pass a folio to f2fs_allocate_data_block() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 17/60] f2fs: Pass a folio to f2fs_inode_chksum_set() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 18/60] f2fs: Pass a folio to f2fs_enable_inode_chksum() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 19/60] f2fs: Pass a folio to f2fs_inode_chksum() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 20/60] f2fs: Pass a folio to fill_node_footer_blkaddr() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 21/60] f2fs: Pass a folio to get_nid() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 22/60] f2fs: Pass a folio to set_cold_node() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 23/60] f2fs: Pass folios to copy_node_footer() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 24/60] f2fs: Pass a folio to fill_node_footer() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 25/60] f2fs: Pass a folio to cpver_of_node() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 26/60] f2fs: Pass a folio to f2fs_recover_xattr_data() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 27/60] f2fs: Pass a folio to is_fsync_dnode() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 28/60] f2fs: Pass a folio to is_dent_dnode() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 29/60] f2fs: Add fio->folio Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 30/60] f2fs: Use folio_unlock() in f2fs_write_compressed_pages() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 31/60] f2fs: Pass a folio to is_cold_node() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 32/60] f2fs: Pass a folio to is_node() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 33/60] f2fs: Pass a folio to IS_DNODE() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 34/60] f2fs: Pass a folio to ofs_of_node() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 35/60] f2fs: Pass a folio to get_dnode_base() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 36/60] f2fs: Pass a folio to ADDRS_PER_PAGE() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 37/60] f2fs: Pass a folio to IS_INODE() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 38/60] f2fs: Add folio counterparts to page_private_flags functions Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 39/60] f2fs: Use a folio in f2fs_is_cp_guaranteed() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 40/60] f2fs: Convert set_page_private_data() to folio_set_f2fs_data() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 41/60] f2fs: Convert get_page_private_data() to folio_get_f2fs_data() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 42/60] f2fs: Pass a folio to f2fs_compress_write_end_io() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 43/60] f2fs: Use a folio in f2fs_merge_page_bio() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 44/60] f2fs: Use a bio in f2fs_submit_page_write() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 45/60] f2fs: Pass a folio to WB_DATA_TYPE() and f2fs_is_cp_guaranteed() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 46/60] f2fs: Use a folio iterator in f2fs_handle_step_decompress() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 47/60] f2fs: Pass a folio to f2fs_end_read_compressed_page() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 48/60] f2fs: Use a folio iterator in f2fs_verify_bio() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 49/60] f2fs: Pass a folio to f2fs_is_compressed_page() Matthew Wilcox (Oracle)
2025-07-22 6:54 ` Chao Yu via Linux-f2fs-devel
2025-07-08 17:03 ` [f2fs-dev] [PATCH 50/60] f2fs: Convert get_next_nat_page() to get_next_nat_folio() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 51/60] f2fs: Pass the nat_blk to __update_nat_bits() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 52/60] f2fs: Pass a folio to F2FS_NODE() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 53/60] f2fs: Pass a folio to f2fs_cache_compressed_page() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 54/60] f2fs: Use a folio in f2fs_encrypted_get_link() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 55/60] f2fs: Use F2FS_F_SB() in f2fs_read_end_io() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 56/60] f2fs: Remove clear_page_private_all() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 57/60] f2fs: Remove use of page from f2fs_write_single_data_page() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 58/60] f2fs: Pass a folio to f2fs_submit_merged_write_cond() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 59/60] f2fs: Pass a folio to __has_merged_page() Matthew Wilcox (Oracle)
2025-07-08 17:03 ` [f2fs-dev] [PATCH 60/60] f2fs: Remove F2FS_P_SB() Matthew Wilcox (Oracle)
2025-07-11 16:20 ` [f2fs-dev] [PATCH 00/60] f2fs folio conversions for 6.17 patchwork-bot+f2fs--- via Linux-f2fs-devel
2025-07-22 7:03 ` Chao Yu via Linux-f2fs-devel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250708170359.111653-12-willy@infradead.org \
--to=willy@infradead.org \
--cc=chao@kernel.org \
--cc=jaegeuk@kernel.org \
--cc=linux-f2fs-devel@lists.sourceforge.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).