Queued with this for testing. --- a/fs/f2fs/recovery.c +++ b/fs/f2fs/recovery.c @@ -767,7 +767,7 @@ static int do_recover_data(struct f2fs_sb_info *sbi, struct inode *inode, out: f2fs_notice(sbi, "recover_data: ino = %lx, nid = %x (i_size: %s), " "range (%u, %u), recovered = %d, err = %d", - inode->i_ino, nid_of_node(&folio->page), + inode->i_ino, nid_of_node(folio), file_keep_isize(inode) ? "keep" : "recover", start, end, recovered, err); return err;
On 07/08, Matthew Wilcox (Oracle) wrote: > 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) <wi...@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 _______________________________________________ Linux-f2fs-devel mailing list Linux-f2fs-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel