• Home
  • Raw
  • Download

Lines Matching refs:nid

71 						u32 nid, u32 link_cnt)  in add_into_hard_link_list()  argument
79 node->nid = nid; in add_into_hard_link_list()
92 while (tmp && (nid < tmp->nid)) { in add_into_hard_link_list()
93 ASSERT(tmp->nid != nid); in add_into_hard_link_list()
107 DBG(2, "ino[0x%x] has hard links [0x%x]\n", nid, link_cnt); in add_into_hard_link_list()
111 static int find_and_dec_hard_link_list(struct f2fs_sb_info *sbi, u32 nid) in find_and_dec_hard_link_list() argument
121 while (node && (nid < node->nid)) { in find_and_dec_hard_link_list()
126 if (node == NULL || (nid != node->nid)) in find_and_dec_hard_link_list()
144 static int is_valid_ssa_node_blk(struct f2fs_sb_info *sbi, u32 nid, in is_valid_ssa_node_blk() argument
184 if (le32_to_cpu(sum_entry->nid) != nid) { in is_valid_ssa_node_blk()
186 DBG(0, "nid [0x%x]\n", nid); in is_valid_ssa_node_blk()
195 le32_to_cpu(sum_entry->nid)); in is_valid_ssa_node_blk()
196 DBG(0, "--> node block's nid [0x%x]\n", nid); in is_valid_ssa_node_blk()
201 segno, nid, blk_addr); in is_valid_ssa_node_blk()
202 sum_entry->nid = cpu_to_le32(nid); in is_valid_ssa_node_blk()
225 u32 nid = le32_to_cpu(sum->nid); in is_valid_summary() local
234 if (!IS_VALID_NID(sbi, nid)) in is_valid_summary()
237 get_node_info(sbi, nid, &ni); in is_valid_summary()
246 if (le32_to_cpu(node_blk->footer.nid) != nid) in is_valid_summary()
250 if (node_blk->footer.nid == node_blk->footer.ino) { in is_valid_summary()
305 if (le32_to_cpu(sum_entry->nid) != parent_nid || in is_valid_ssa_data_blk()
310 le32_to_cpu(sum_entry->nid)); in is_valid_ssa_data_blk()
330 sum_entry->nid = cpu_to_le32(parent_nid); in is_valid_ssa_data_blk()
351 static int __check_inode_mode(u32 nid, enum FILE_TYPE ftype, u16 mode) in __check_inode_mode() argument
360 nid, mode); in __check_inode_mode()
381 nid, ftype, mode); in __check_inode_mode()
385 static int sanity_check_nid(struct f2fs_sb_info *sbi, u32 nid, in sanity_check_nid() argument
393 if (!IS_VALID_NID(sbi, nid)) { in sanity_check_nid()
394 ASSERT_MSG("nid is not valid. [0x%x]", nid); in sanity_check_nid()
398 get_node_info(sbi, nid, ni); in sanity_check_nid()
400 ASSERT_MSG("nid[0x%x] ino is 0", nid); in sanity_check_nid()
405 ASSERT_MSG("nid is NEW_ADDR. [0x%x]", nid); in sanity_check_nid()
418 node_blk->footer.nid != node_blk->footer.ino) { in sanity_check_nid()
420 nid, le32_to_cpu(node_blk->footer.nid), in sanity_check_nid()
426 nid, ni->ino, le32_to_cpu(node_blk->footer.ino)); in sanity_check_nid()
430 node_blk->footer.nid == node_blk->footer.ino) { in sanity_check_nid()
432 nid, le32_to_cpu(node_blk->footer.nid), in sanity_check_nid()
437 if (le32_to_cpu(node_blk->footer.nid) != nid) { in sanity_check_nid()
439 nid, ni->blk_addr, in sanity_check_nid()
440 le32_to_cpu(node_blk->footer.nid)); in sanity_check_nid()
449 nid, flag); in sanity_check_nid()
459 nid, ni->blk_addr); in sanity_check_nid()
469 __check_inode_mode(nid, ftype, le16_to_cpu(node_blk->i.i_mode))) in sanity_check_nid()
474 f2fs_test_bit(nid, fsck->nat_area_bitmap) != 0) { in sanity_check_nid()
475 f2fs_clear_bit(nid, fsck->nat_area_bitmap); in sanity_check_nid()
477 f2fs_set_bit(nid, NM_I(sbi)->nid_bitmap); in sanity_check_nid()
480 nid); in sanity_check_nid()
482 if (is_valid_ssa_node_blk(sbi, nid, ni->blk_addr)) { in sanity_check_nid()
483 ASSERT_MSG("summary node block is not valid. [0x%x]", nid); in sanity_check_nid()
498 int fsck_sanity_check_nid(struct f2fs_sb_info *sbi, u32 nid, in fsck_sanity_check_nid() argument
503 return sanity_check_nid(sbi, nid, node_blk, ftype, ntype, ni); in fsck_sanity_check_nid()
535 u32 nid, enum FILE_TYPE ftype, enum NODE_TYPE ntype, in fsck_chk_node_blk() argument
544 if (sanity_check_nid(sbi, nid, node_blk, ftype, ntype, &ni)) in fsck_chk_node_blk()
550 fsck_chk_inode_blk(sbi, nid, ftype, node_blk, blk_cnt, &ni, child); in fsck_chk_node_blk()
551 quota_add_inode_usage(fsck->qctx, nid, &node_blk->i); in fsck_chk_node_blk()
557 fsck_chk_dnode_blk(sbi, inode, nid, ftype, node_blk, in fsck_chk_node_blk()
644 void fsck_reada_node_block(struct f2fs_sb_info *sbi, u32 nid) in fsck_reada_node_block() argument
648 if (nid != 0 && IS_VALID_NID(sbi, nid)) { in fsck_reada_node_block()
649 get_node_info(sbi, nid, &ni); in fsck_reada_node_block()
661 u32 nid = le32_to_cpu(node_blk->in.nid[i]); in fsck_reada_all_direct_node_blocks() local
663 fsck_reada_node_block(sbi, nid); in fsck_reada_all_direct_node_blocks()
668 void fsck_chk_inode_blk(struct f2fs_sb_info *sbi, u32 nid, in fsck_chk_inode_blk() argument
689 child.p_ino = nid; in fsck_chk_inode_blk()
703 !is_qf_ino(F2FS_RAW_SUPER(sbi), nid)) { in fsck_chk_inode_blk()
705 add_into_hard_link_list(sbi, nid, i_links); in fsck_chk_inode_blk()
709 DBG(3, "[0x%x] has hard links [0x%x]\n", nid, i_links); in fsck_chk_inode_blk()
710 if (find_and_dec_hard_link_list(sbi, nid)) { in fsck_chk_inode_blk()
712 nid, i_links); in fsck_chk_inode_blk()
719 nid, i_links, i_links + 1); in fsck_chk_inode_blk()
731 if (fsck_chk_xattr_blk(sbi, nid, i_xattr_nid, blk_cnt)) { in fsck_chk_inode_blk()
736 nid, i_xattr_nid); in fsck_chk_inode_blk()
754 nid, isize); in fsck_chk_inode_blk()
758 nid, isize, in fsck_chk_inode_blk()
766 ASSERT_MSG("[0x%x] wrong extra_attr flag", nid); in fsck_chk_inode_blk()
770 nid, node_blk->i.i_inline); in fsck_chk_inode_blk()
786 nid, inline_size); in fsck_chk_inode_blk()
790 nid, inline_size, in fsck_chk_inode_blk()
804 ASSERT_MSG("[0x%x] unexpected casefold flag", nid); in fsck_chk_inode_blk()
806 FIX_MSG("ino[0x%x] clear casefold flag", nid); in fsck_chk_inode_blk()
820 nid, blkaddr); in fsck_chk_inode_blk()
831 nid, (unsigned long)i_size); in fsck_chk_inode_blk()
845 ASSERT_MSG("[0x%x] junk inline data", nid); in fsck_chk_inode_blk()
853 DBG(3, "ino[0x%x] has inline data!\n", nid); in fsck_chk_inode_blk()
861 DBG(3, "ino[0x%x] has inline dentry!\n", nid); in fsck_chk_inode_blk()
864 nid, blkaddr); in fsck_chk_inode_blk()
913 ftype, nid, idx, ni->version, in fsck_chk_inode_blk()
923 nid, ofs + idx); in fsck_chk_inode_blk()
930 u32 nid = le32_to_cpu(node_blk->i.i_nid[idx]); in fsck_chk_inode_blk() local
931 fsck_reada_node_block(sbi, nid); in fsck_chk_inode_blk()
958 FIX_MSG("[0x%x] i_nid[%d] = 0", nid, idx); in fsck_chk_inode_blk()
979 nid, child.ei.fofs, child.ei.blk, child.ei.len); in fsck_chk_inode_blk()
987 nid, i_blocks, *blk_cnt); in fsck_chk_inode_blk()
992 nid, i_blocks, *blk_cnt); in fsck_chk_inode_blk()
1004 nid, namelen, child_d->i_namelen); in fsck_chk_inode_blk()
1006 FIX_MSG("[0x%x] i_namelen=0x%x -> 0x%x", nid, namelen, in fsck_chk_inode_blk()
1022 if (is_qf_ino(F2FS_RAW_SUPER(sbi), nid)) in fsck_chk_inode_blk()
1035 nid, i_links, child.links); in fsck_chk_inode_blk()
1040 nid, i_links, child.links); in fsck_chk_inode_blk()
1046 nid, child.dots); in fsck_chk_inode_blk()
1050 FIX_MSG("Dir: 0x%x set inline_dots", nid); in fsck_chk_inode_blk()
1072 nid, i_gc_failures); in fsck_chk_inode_blk()
1081 nid, (unsigned long)i_blocks); in fsck_chk_inode_blk()
1086 nid, (unsigned long)F2FS_BLKSIZE); in fsck_chk_inode_blk()
1092 nid, i_links); in fsck_chk_inode_blk()
1097 nid, i_links); in fsck_chk_inode_blk()
1114 nid, provided, calculated); in fsck_chk_inode_blk()
1120 nid, provided, calculated); in fsck_chk_inode_blk()
1132 u32 nid, enum FILE_TYPE ftype, struct f2fs_node *node_blk, in fsck_chk_dnode_blk() argument
1137 child->p_ino = nid; in fsck_chk_dnode_blk()
1157 nid, idx, ni->version, in fsck_chk_dnode_blk()
1166 FIX_MSG("[0x%x] dn.addr[%d] = 0", nid, idx); in fsck_chk_dnode_blk()
1186 if (le32_to_cpu(node_blk->in.nid[i]) == 0x0) in fsck_chk_idnode_blk()
1189 le32_to_cpu(node_blk->in.nid[i]), in fsck_chk_idnode_blk()
1197 node_blk->in.nid[i] = 0; in fsck_chk_idnode_blk()
1208 nid_t nid = le32_to_cpu(node_blk->footer.nid); in fsck_chk_idnode_blk() local
1210 get_node_info(sbi, nid, &ni); in fsck_chk_idnode_blk()
1228 if (le32_to_cpu(node_blk->in.nid[i]) == 0x0) in fsck_chk_didnode_blk()
1231 le32_to_cpu(node_blk->in.nid[i]), in fsck_chk_didnode_blk()
1239 node_blk->in.nid[i] = 0; in fsck_chk_didnode_blk()
1251 nid_t nid = le32_to_cpu(node_blk->footer.nid); in fsck_chk_didnode_blk() local
1253 get_node_info(sbi, nid, &ni); in fsck_chk_didnode_blk()
2083 if (sanity_check_nid(sbi, node->nid, node_blk, in fix_hard_links()
2090 node->nid, node->links, node->actual_links); in fix_hard_links()
2576 nid_t nid) in fsck_failed_reconnect_file_dnode() argument
2587 get_node_info(sbi, nid, &ni); in fsck_failed_reconnect_file_dnode()
2609 nid_t nid) in fsck_failed_reconnect_file_idnode() argument
2620 get_node_info(sbi, nid, &ni); in fsck_failed_reconnect_file_idnode()
2629 tmp = le32_to_cpu(node->in.nid[i]); in fsck_failed_reconnect_file_idnode()
2639 nid_t nid) in fsck_failed_reconnect_file_didnode() argument
2650 get_node_info(sbi, nid, &ni); in fsck_failed_reconnect_file_didnode()
2659 tmp = le32_to_cpu(node->in.nid[i]); in fsck_failed_reconnect_file_didnode()
2678 nid_t nid; in fsck_failed_reconnect_file() local
2696 nid = le32_to_cpu(node->i.i_xattr_nid); in fsck_failed_reconnect_file()
2699 get_node_info(sbi, nid, &ni); in fsck_failed_reconnect_file()
2718 nid = le32_to_cpu(node->i.i_nid[i]); in fsck_failed_reconnect_file()
2719 if (!nid) in fsck_failed_reconnect_file()
2725 fsck_failed_reconnect_file_dnode(sbi, nid); in fsck_failed_reconnect_file()
2729 fsck_failed_reconnect_file_idnode(sbi, nid); in fsck_failed_reconnect_file()
2732 fsck_failed_reconnect_file_didnode(sbi, nid); in fsck_failed_reconnect_file()
2756 nid_t nid; in fsck_reconnect_file() local
2765 for (nid = 0; nid < fsck->nr_nat_entries; nid++) { in fsck_reconnect_file()
2766 if (f2fs_test_bit(nid, fsck->nat_area_bitmap)) { in fsck_reconnect_file()
2767 if (is_qf_ino(F2FS_RAW_SUPER(sbi), nid)) { in fsck_reconnect_file()
2769 nid); in fsck_reconnect_file()
2773 get_node_info(sbi, nid, &ni); in fsck_reconnect_file()
2778 if (node->footer.ino != node->footer.nid) { in fsck_reconnect_file()
2780 nid); in fsck_reconnect_file()
2786 nid); in fsck_reconnect_file()
2791 if (sanity_check_nid(sbi, nid, node, ftype, in fsck_reconnect_file()
2793 ASSERT_MSG("Invalid nid [0x%x]\n", nid); in fsck_reconnect_file()
2797 DBG(1, "Check inode 0x%x\n", nid); in fsck_reconnect_file()
2799 fsck_chk_inode_blk(sbi, nid, ftype, node, in fsck_reconnect_file()
2802 f2fs_set_bit(nid, reconnect_bitmap); in fsck_reconnect_file()
2810 for (nid = 0; nid < fsck->nr_nat_entries; nid++) { in fsck_reconnect_file()
2811 if (f2fs_test_bit(nid, reconnect_bitmap)) { in fsck_reconnect_file()
2812 get_node_info(sbi, nid, &ni); in fsck_reconnect_file()
2818 nid); in fsck_reconnect_file()
2819 fsck_failed_reconnect_file(sbi, nid); in fsck_reconnect_file()
2823 quota_add_inode_usage(fsck->qctx, nid, &node->i); in fsck_reconnect_file()
2825 DBG(1, "Reconnected inode [0x%x] to lost+found\n", nid); in fsck_reconnect_file()
3066 node->nid, node->links); in fsck_verify()