f2fs: Pass a folio to f2fs_inode_chksum_verify()

Both callers now have a folio, so pass it in.  Removes three calls
to compound_head().

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-03-31 21:11:27 +01:00 committed by Jaegeuk Kim
parent f0fac66fe9
commit 7c213e98c7
3 changed files with 11 additions and 11 deletions

View File

@ -3611,7 +3611,7 @@ int f2fs_pin_file_control(struct inode *inode, bool inc);
* inode.c
*/
void f2fs_set_inode_flags(struct inode *inode);
bool f2fs_inode_chksum_verify(struct f2fs_sb_info *sbi, struct page *page);
bool f2fs_inode_chksum_verify(struct f2fs_sb_info *sbi, struct folio *folio);
void f2fs_inode_chksum_set(struct f2fs_sb_info *sbi, struct page *page);
struct inode *f2fs_iget(struct super_block *sb, unsigned long ino);
struct inode *f2fs_iget_retry(struct super_block *sb, unsigned long ino);

View File

@ -156,7 +156,7 @@ static __u32 f2fs_inode_chksum(struct f2fs_sb_info *sbi, struct page *page)
return chksum;
}
bool f2fs_inode_chksum_verify(struct f2fs_sb_info *sbi, struct page *page)
bool f2fs_inode_chksum_verify(struct f2fs_sb_info *sbi, struct folio *folio)
{
struct f2fs_inode *ri;
__u32 provided, calculated;
@ -165,21 +165,21 @@ bool f2fs_inode_chksum_verify(struct f2fs_sb_info *sbi, struct page *page)
return true;
#ifdef CONFIG_F2FS_CHECK_FS
if (!f2fs_enable_inode_chksum(sbi, page))
if (!f2fs_enable_inode_chksum(sbi, &folio->page))
#else
if (!f2fs_enable_inode_chksum(sbi, page) ||
PageDirty(page) ||
folio_test_writeback(page_folio(page)))
if (!f2fs_enable_inode_chksum(sbi, &folio->page) ||
folio_test_dirty(folio) ||
folio_test_writeback(folio))
#endif
return true;
ri = &F2FS_NODE(page)->i;
ri = &F2FS_NODE(&folio->page)->i;
provided = le32_to_cpu(ri->i_inode_checksum);
calculated = f2fs_inode_chksum(sbi, page);
calculated = f2fs_inode_chksum(sbi, &folio->page);
if (provided != calculated)
f2fs_warn(sbi, "checksum invalid, nid = %lu, ino_of_node = %x, %x vs. %x",
page_folio(page)->index, ino_of_node(page),
folio->index, ino_of_node(&folio->page),
provided, calculated);
return provided == calculated;

View File

@ -1403,7 +1403,7 @@ static int read_node_folio(struct folio *folio, blk_opf_t op_flags)
int err;
if (folio_test_uptodate(folio)) {
if (!f2fs_inode_chksum_verify(sbi, &folio->page)) {
if (!f2fs_inode_chksum_verify(sbi, folio)) {
folio_clear_uptodate(folio);
return -EFSBADCRC;
}
@ -1515,7 +1515,7 @@ static struct folio *__get_node_folio(struct f2fs_sb_info *sbi, pgoff_t nid,
goto out_err;
}
if (!f2fs_inode_chksum_verify(sbi, &folio->page)) {
if (!f2fs_inode_chksum_verify(sbi, folio)) {
err = -EFSBADCRC;
goto out_err;
}