Lines Matching refs:nid

71 						u32 nid, u32 link_cnt)
79 node->nid = nid;
92 while (tmp && (nid < tmp->nid)) {
93 ASSERT(tmp->nid != nid);
107 DBG(2, "ino[0x%x] has hard links [0x%x]\n", nid, link_cnt);
111 static int find_and_dec_hard_link_list(struct f2fs_sb_info *sbi, u32 nid)
121 while (node && (nid < node->nid)) {
126 if (node == NULL || (nid != node->nid))
144 static int is_valid_ssa_node_blk(struct f2fs_sb_info *sbi, u32 nid,
184 if (le32_to_cpu(sum_entry->nid) != nid) {
186 DBG(0, "nid [0x%x]\n", nid);
194 DBG(0, "summary_entry.nid [0x%x]\n",
195 le32_to_cpu(sum_entry->nid));
196 DBG(0, "--> node block's nid [0x%x]\n", nid);
201 segno, nid, blk_addr);
202 sum_entry->nid = cpu_to_le32(nid);
225 u32 nid = le32_to_cpu(sum->nid);
234 if (!IS_VALID_NID(sbi, nid))
237 get_node_info(sbi, nid, &ni);
246 if (le32_to_cpu(node_blk->footer.nid) != nid)
250 if (node_blk->footer.nid == node_blk->footer.ino) {
309 if (le32_to_cpu(sum_entry->nid) != parent_nid ||
313 DBG(0, "summary_entry.nid [0x%x]\n",
314 le32_to_cpu(sum_entry->nid));
319 DBG(0, "parent nid [0x%x]\n",
334 sum_entry->nid = cpu_to_le32(parent_nid);
355 static int __check_inode_mode(u32 nid, enum FILE_TYPE ftype, u16 mode)
364 nid, mode);
385 nid, ftype, mode);
389 static int sanity_check_nid(struct f2fs_sb_info *sbi, u32 nid,
397 if (!IS_VALID_NID(sbi, nid)) {
398 ASSERT_MSG("nid is not valid. [0x%x]", nid);
402 get_node_info(sbi, nid, ni);
404 ASSERT_MSG("nid[0x%x] ino is 0", nid);
409 ASSERT_MSG("nid is NEW_ADDR. [0x%x]", nid);
422 node_blk->footer.nid != node_blk->footer.ino) {
423 ASSERT_MSG("nid[0x%x] footer.nid[0x%x] footer.ino[0x%x]",
424 nid, le32_to_cpu(node_blk->footer.nid),
429 ASSERT_MSG("nid[0x%x] nat_entry->ino[0x%x] footer.ino[0x%x]",
430 nid, ni->ino, le32_to_cpu(node_blk->footer.ino));
434 node_blk->footer.nid == node_blk->footer.ino) {
435 ASSERT_MSG("nid[0x%x] footer.nid[0x%x] footer.ino[0x%x]",
436 nid, le32_to_cpu(node_blk->footer.nid),
441 if (le32_to_cpu(node_blk->footer.nid) != nid) {
442 ASSERT_MSG("nid[0x%x] blk_addr[0x%x] footer.nid[0x%x]",
443 nid, ni->blk_addr,
444 le32_to_cpu(node_blk->footer.nid));
453 nid, flag);
462 ASSERT_MSG("Duplicated node blk. nid[0x%x][0x%x]\n",
463 nid, ni->blk_addr);
473 __check_inode_mode(nid, ftype, le16_to_cpu(node_blk->i.i_mode)))
478 f2fs_test_bit(nid, fsck->nat_area_bitmap) != 0) {
479 f2fs_clear_bit(nid, fsck->nat_area_bitmap);
480 /* avoid reusing nid when reconnecting files */
481 f2fs_set_bit(nid, NM_I(sbi)->nid_bitmap);
483 ASSERT_MSG("orphan or xattr nid is duplicated [0x%x]\n",
484 nid);
486 if (is_valid_ssa_node_blk(sbi, nid, ni->blk_addr)) {
487 ASSERT_MSG("summary node block is not valid. [0x%x]", nid);
517 int fsck_sanity_check_nid(struct f2fs_sb_info *sbi, u32 nid,
522 return sanity_check_nid(sbi, nid, node_blk, ftype, ntype, ni);
554 u32 nid, enum FILE_TYPE ftype, enum NODE_TYPE ntype,
564 if (sanity_check_nid(sbi, nid, node_blk, ftype, ntype, &ni))
570 fsck_chk_inode_blk(sbi, nid, ftype, node_blk, blk_cnt, cbc,
572 quota_add_inode_usage(fsck->qctx, nid, &node_blk->i);
578 fsck_chk_dnode_blk(sbi, inode, nid, ftype, node_blk,
665 void fsck_reada_node_block(struct f2fs_sb_info *sbi, u32 nid)
669 if (nid != 0 && IS_VALID_NID(sbi, nid)) {
670 get_node_info(sbi, nid, &ni);
682 u32 nid = le32_to_cpu(node_blk->in.nid[i]);
684 fsck_reada_node_block(sbi, nid);
688 /* start with valid nid and blkaddr */
689 void fsck_chk_inode_blk(struct f2fs_sb_info *sbi, u32 nid,
729 nid, i_flags, node_blk->i.i_flags);
736 child.p_ino = nid;
754 !is_qf_ino(F2FS_RAW_SUPER(sbi), nid)) {
756 add_into_hard_link_list(sbi, nid, i_links);
760 DBG(3, "[0x%x] has hard links [0x%x]\n", nid, i_links);
761 if (find_and_dec_hard_link_list(sbi, nid)) {
763 nid, i_links);
770 nid, i_links, i_links + 1);
782 if (fsck_chk_xattr_blk(sbi, nid, i_xattr_nid, blk_cnt)) {
787 nid, i_xattr_nid);
805 nid, isize);
809 nid, isize,
817 ASSERT_MSG("[0x%x] wrong extra_attr flag", nid);
821 nid, node_blk->i.i_inline);
837 nid, inline_size);
841 nid, inline_size,
855 ASSERT_MSG("[0x%x] unexpected casefold flag", nid);
857 FIX_MSG("ino[0x%x] clear casefold flag", nid);
871 nid, blkaddr);
882 nid, (unsigned long)i_size);
896 ASSERT_MSG("[0x%x] junk inline data", nid);
904 DBG(3, "ino[0x%x] has inline data!\n", nid);
912 DBG(3, "ino[0x%x] has inline dentry!\n", nid);
915 nid, blkaddr);
959 FIX_MSG("[0x%x] i_addr[%d] = 0", nid,
979 ftype, nid, idx, ni->version,
988 FIX_MSG("[0x%x] i_addr[%d] = 0", nid, ofs + idx);
994 u32 nid = le32_to_cpu(node_blk->i.i_nid[idx]);
995 fsck_reada_node_block(sbi, nid);
1022 FIX_MSG("[0x%x] i_nid[%d] = 0", nid, idx);
1043 nid, child.ei.fofs, child.ei.blk, child.ei.len);
1051 nid, i_blocks, *blk_cnt);
1056 nid, i_blocks, *blk_cnt);
1065 nid, i_compr_blocks, cbc->cnt);
1078 nid, namelen, child_d->i_namelen);
1080 FIX_MSG("[0x%x] i_namelen=0x%x -> 0x%x", nid, namelen,
1096 if (is_qf_ino(F2FS_RAW_SUPER(sbi), nid))
1109 nid, i_links, child.links);
1114 nid, i_links, child.links);
1120 nid, child.dots);
1124 FIX_MSG("Dir: 0x%x set inline_dots", nid);
1146 nid, i_gc_failures);
1157 nid, (unsigned long)F2FS_BLKSIZE);
1162 nid, i_links);
1167 nid, i_links);
1184 nid, provided, calculated);
1190 nid, provided, calculated);
1202 u32 nid, enum FILE_TYPE ftype, struct f2fs_node *node_blk,
1208 child->p_ino = nid;
1228 FIX_MSG("[0x%x] dn.addr[%d] = 0", nid,
1247 nid, idx, ni->version,
1256 FIX_MSG("[0x%x] dn.addr[%d] = 0", nid, idx);
1276 if (le32_to_cpu(node_blk->in.nid[i]) == 0x0)
1279 le32_to_cpu(node_blk->in.nid[i]),
1286 printf("should delete in.nid[i] = 0;\n");
1288 node_blk->in.nid[i] = 0;
1299 nid_t nid = le32_to_cpu(node_blk->footer.nid);
1301 get_node_info(sbi, nid, &ni);
1319 if (le32_to_cpu(node_blk->in.nid[i]) == 0x0)
1322 le32_to_cpu(node_blk->in.nid[i]),
1328 printf("should delete in.nid[i] = 0;\n");
1330 node_blk->in.nid[i] = 0;
1342 nid_t nid = le32_to_cpu(node_blk->footer.nid);
1344 get_node_info(sbi, nid, &ni);
2197 * 2. nat_area_bitmap has bitmap information of used nid in NAT.
2238 if (sanity_check_nid(sbi, node->nid, node_blk,
2245 node->nid, node->links, node->actual_links);
2734 nid_t nid)
2745 get_node_info(sbi, nid, &ni);
2767 nid_t nid)
2778 get_node_info(sbi, nid, &ni);
2787 tmp = le32_to_cpu(node->in.nid[i]);
2797 nid_t nid)
2808 get_node_info(sbi, nid, &ni);
2817 tmp = le32_to_cpu(node->in.nid[i]);
2836 nid_t nid;
2854 nid = le32_to_cpu(node->i.i_xattr_nid);
2857 get_node_info(sbi, nid, &ni);
2876 nid = le32_to_cpu(node->i.i_nid[i]);
2877 if (!nid)
2883 fsck_failed_reconnect_file_dnode(sbi, nid);
2887 fsck_failed_reconnect_file_idnode(sbi, nid);
2890 fsck_failed_reconnect_file_didnode(sbi, nid);
2915 nid_t nid;
2924 for (nid = 0; nid < fsck->nr_nat_entries; nid++) {
2925 if (f2fs_test_bit(nid, fsck->nat_area_bitmap)) {
2926 if (is_qf_ino(F2FS_RAW_SUPER(sbi), nid)) {
2928 nid);
2932 get_node_info(sbi, nid, &ni);
2937 if (node->footer.ino != node->footer.nid) {
2939 nid);
2945 nid);
2950 if (sanity_check_nid(sbi, nid, node, ftype,
2952 ASSERT_MSG("Invalid nid [0x%x]\n", nid);
2956 DBG(1, "Check inode 0x%x\n", nid);
2960 fsck_chk_inode_blk(sbi, nid, ftype, node,
2963 f2fs_set_bit(nid, reconnect_bitmap);
2971 for (nid = 0; nid < fsck->nr_nat_entries; nid++) {
2972 if (f2fs_test_bit(nid, reconnect_bitmap)) {
2973 get_node_info(sbi, nid, &ni);
2979 nid);
2980 fsck_failed_reconnect_file(sbi, nid);
2984 quota_add_inode_usage(fsck->qctx, nid, &node->i);
2986 DBG(1, "Reconnected inode [0x%x] to lost+found\n", nid);
3232 node->nid, node->links);