@@ -247,7 +247,7 @@ static int is_valid_summary(struct f2fs_sb_info *sbi, struct f2fs_summary *sum,
goto out;
/* check its block address */
- if (node_blk->footer.nid == node_blk->footer.ino) {
+ if (IS_INODE(node_blk)) {
int ofs = get_extra_isize(node_blk);
if (ofs + ofs_in_node >= DEF_ADDRS_PER_INODE)
@@ -447,8 +447,7 @@ static int sanity_check_nid(struct f2fs_sb_info *sbi, u32 nid,
nid, ni->ino, le32_to_cpu(node_blk->footer.ino));
return -EINVAL;
}
- if (ntype != TYPE_INODE &&
- node_blk->footer.nid == node_blk->footer.ino) {
+ if (ntype != TYPE_INODE && IS_INODE(node_blk)) {
ASSERT_MSG("nid[0x%x] footer.nid[0x%x] footer.ino[0x%x]",
nid, le32_to_cpu(node_blk->footer.nid),
le32_to_cpu(node_blk->footer.ino));
@@ -3081,7 +3080,7 @@ static int fsck_reconnect_file(struct f2fs_sb_info *sbi)
ASSERT(err >= 0);
/* reconnection will restore these nodes if needed */
- if (node->footer.ino != node->footer.nid) {
+ if (!IS_INODE(node)) {
DBG(1, "Not support non-inode node [0x%x]\n",
nid);
continue;
@@ -2420,7 +2420,7 @@ void update_data_blkaddr(struct f2fs_sb_info *sbi, nid_t nid,
ASSERT(ret >= 0);
/* check its block address */
- if (node_blk->footer.nid == node_blk->footer.ino) {
+ if (IS_INODE(node_blk)) {
int ofs = get_extra_isize(node_blk);
oldaddr = le32_to_cpu(node_blk->i.i_addr[ofs + ofs_in_node]);
@@ -2435,7 +2435,7 @@ void update_data_blkaddr(struct f2fs_sb_info *sbi, nid_t nid,
}
/* check extent cache entry */
- if (node_blk->footer.nid != node_blk->footer.ino) {
+ if (!IS_INODE(node_blk)) {
get_node_info(sbi, le32_to_cpu(node_blk->footer.ino), &ni);
/* read inode block */
@@ -20,7 +20,8 @@
static inline int IS_INODE(struct f2fs_node *node)
{
- return ((node)->footer.nid == (node)->footer.ino);
+ return le32_to_cpu(node->footer.ino) ==
+ le32_to_cpu(node->footer.nid);
}
static inline unsigned int ADDRS_PER_PAGE(struct f2fs_sb_info *sbi,
And use IS_INODE() to clean up codes. Signed-off-by: Chao Yu <chao@kernel.org> --- fsck/fsck.c | 7 +++---- fsck/mount.c | 4 ++-- fsck/node.h | 3 ++- 3 files changed, 7 insertions(+), 7 deletions(-)