Home | History | Annotate | Download | only in e2fsck

Lines Matching refs:ino

79 static void mark_inode_bad(e2fsck_t ctx, ino_t ino);
80 static void add_encrypted_dir(e2fsck_t ctx, ino_t ino);
91 ext2_ino_t ino;
111 ext2_ino_t ino;
183 int e2fsck_pass1_check_symlink(ext2_filsys fs, ext2_ino_t ino,
198 if (ext2fs_inline_data_size(fs, ino, &inline_size))
219 if (ext2fs_extent_open2(fs, ino, inode, &handle))
281 e2fsck_write_inode(ctx, pctx->ino, pctx->inode, "pass1");
299 e2fsck_write_inode(ctx, pctx->ino, pctx->inode, "pass1");
317 e2fsck_write_inode(ctx, pctx->ino, pctx->inode, "pass1");
366 if (inode.i_mtime == pctx->ino &&
550 e2fsck_write_inode_full(ctx, pctx->ino, pctx->inode,
589 printf("inode #%u, i_extra_size %d\n", pctx->ino,
608 e2fsck_write_inode_full(ctx, pctx->ino, pctx->inode,
646 e2fsck_write_inode_full(ctx, pctx->ino, pctx->inode,
710 if (ext2fs_inline_data_size(ctx->fs, pctx->ino, &size))
742 if (ext2fs_bmap2(ctx->fs, pctx->ino, inode, 0, 0, 0, 0,
775 retval = ext2fs_read_dir_block4(ctx->fs, blk, buf, 0, pctx->ino);
786 (dirent->inode != pctx->ino) ||
806 e2fsck_write_inode_full(ctx, pctx->ino, inode,
852 static errcode_t recheck_bad_inode_checksum(ext2_filsys fs, ext2_ino_t ino,
864 retval = ext2fs_read_inode_full(fs, ino, (struct ext2_inode *)&inode,
879 retval = ext2fs_write_inode_full(fs, ino, (struct ext2_inode *)&inode,
907 ext2_ino_t ino;
910 if (!ext2fs_lookup(fs, EXT2_ROOT_INO, name, sizeof(name)-1, 0, &ino))
920 static errcode_t get_inline_data_ea_size(ext2_filsys fs, ext2_ino_t ino,
927 retval = ext2fs_xattrs_open(fs, ino, &handle);
944 static void finish_processing_inode(e2fsck_t ctx, ext2_ino_t ino,
956 pctx->errcode = recheck_bad_inode_checksum(ctx->fs, ino, ctx, pctx);
960 #define FINISH_INODE_LOOP(ctx, ino, pctx, failed_csum) \
962 finish_processing_inode((ctx), (ino), (pctx), (failed_csum)); \
989 ext2_ino_t ino,
1056 e2fsck_clear_inode(ctx, ino, inode, 0, "pass1");
1062 e2fsck_write_inode(ctx, ino, inode, "pass1");
1122 * Check if the passed ino is one of the used superblock quota inodes.
1126 * checks if the passed ino is one of the s_*_quota_inum superblock fields,
1129 static int quota_inum_is_super(struct ext2_super_block *sb, ext2_ino_t ino)
1134 if (*quota_sb_inump(sb, qtype) == ino)
1141 * Check if the passed ino is one of the reserved quota inodes.
1145 static int quota_inum_is_reserved(ext2_filsys fs, ext2_ino_t ino)
1150 if (quota_type2inum(qtype, fs->super) == ino)
1161 ext2_ino_t ino = 0;
1358 if (ino % (fs->super->s_inodes_per_group * 4) == 1) {
1363 pctx.errcode = ext2fs_get_next_inode_full(scan, &ino,
1365 if (ino > ino_threshold)
1376 if (ino == EXT2_BAD_INO &&
1381 e2fsck_clear_inode(ctx, ino, inode, 0, "pass1");
1404 ext2fs_mark_inode_bitmap2(ctx->inode_bb_map, ino);
1405 ext2fs_mark_inode_bitmap2(ctx->inode_used_map, ino);
1415 if (!ino)
1417 pctx.ino = ino;
1419 ctx->stashed_ino = ino;
1426 e2fsck_clear_inode(ctx, ino, inode, 0, "pass1");
1452 e2fsck_write_inode(ctx, ino, inode,
1460 ino, inode->i_links_count);
1467 } else if ((ino >= EXT2_FIRST_INODE(fs->super)) &&
1468 !quota_inum_is_reserved(fs, ino)) {
1473 e2fsck_write_inode(ctx, ino, inode,
1478 FINISH_INODE_LOOP(ctx, ino, &pctx, failed_csum);
1485 int res = fix_inline_data_extents_file(ctx, ino, inode,
1496 (ino >= EXT2_FIRST_INODE(fs->super))) {
1499 pctx.errcode = ext2fs_inline_data_size(fs, ino, &size);
1506 e2fsck_clear_inode(ctx, ino, inode, 0, "pass1");
1514 (ino >= EXT2_FIRST_INODE(fs->super))) {
1522 err = get_inline_data_ea_size(fs, ino, &size);
1557 e2fsck_write_inode(ctx, ino, inode,
1586 (inode->i_links_count || (ino == EXT2_BAD_INO) ||
1587 (ino == EXT2_ROOT_INO) || (ino == EXT2_JOURNAL_INO))) {
1596 e2fsck_clear_inode(ctx, ino, inode, 0, "pass1");
1597 if (ino == EXT2_BAD_INO)
1599 ino);
1614 (inode->i_links_count || (ino == EXT2_BAD_INO) ||
1615 (ino == EXT2_ROOT_INO) || (ino == EXT2_JOURNAL_INO)) &&
1636 e2fsck_write_inode(ctx, ino, inode, "pass1");
1641 if (ino == EXT2_BAD_INO) {
1650 e2fsck_write_inode(ctx, ino, inode,
1663 pb.ino = EXT2_BAD_INO;
1672 pctx.errcode = ext2fs_block_iterate3(fs, ino, 0,
1685 ext2fs_mark_inode_bitmap2(ctx->inode_used_map, ino);
1687 FINISH_INODE_LOOP(ctx, ino, &pctx, failed_csum);
1689 } else if (ino == EXT2_ROOT_INO) {
1711 e2fsck_write_inode(ctx, ino, inode,
1716 } else if (ino == EXT2_JOURNAL_INO) {
1717 ext2fs_mark_inode_bitmap2(ctx->inode_used_map, ino);
1723 e2fsck_write_inode(ctx, ino, inode,
1728 FINISH_INODE_LOOP(ctx, ino, &pctx, failed_csum);
1737 ino, 0);
1738 e2fsck_write_inode_full(ctx, ino, inode,
1742 } else if (quota_inum_is_reserved(fs, ino)) {
1743 ext2fs_mark_inode_bitmap2(ctx->inode_used_map, ino);
1745 quota_inum_is_super(fs->super, ino)) {
1750 e2fsck_write_inode(ctx, ino, inode,
1755 FINISH_INODE_LOOP(ctx, ino, &pctx, failed_csum);
1764 ino, 0);
1765 e2fsck_write_inode_full(ctx, ino, inode,
1769 } else if (ino < EXT2_FIRST_INODE(fs->super)) {
1772 ext2fs_mark_inode_bitmap2(ctx->inode_used_map, ino);
1773 if (ino == EXT2_BOOT_LOADER_INO) {
1776 } else if (ino == EXT2_RESIZE_INO) {
1787 e2fsck_write_inode(ctx, ino, inode,
1793 FINISH_INODE_LOOP(ctx, ino, &pctx, failed_csum);
1798 FINISH_INODE_LOOP(ctx, ino, &pctx, failed_csum);
1814 e2fsck_write_inode(ctx, ino, inode, "pass1");
1819 ext2fs_mark_inode_bitmap2(ctx->inode_used_map, ino);
1832 mark_inode_bad(ctx, ino);
1836 mark_inode_bad(ctx, ino);
1840 mark_inode_bad(ctx, ino);
1846 ino);
1850 e2fsck_write_inode(ctx, ino,
1869 e2fsck_write_inode(ctx, ino, inode, "pass1");
1874 ext2fs_mark_inode_bitmap2(ctx->inode_dir_map, ino);
1875 e2fsck_add_dir_info(ctx, ino, 0);
1878 add_encrypted_dir(ctx, ino);
1880 ext2fs_mark_inode_bitmap2(ctx->inode_reg_map, ino);
1895 e2fsck_pass1_check_symlink(fs, ino, inode,
1900 FINISH_INODE_LOOP(ctx, ino, &pctx, failed_csum);
1906 FINISH_INODE_LOOP(ctx, ino, &pctx, failed_csum);
1923 mark_inode_bad(ctx, ino);
1942 itp->ino = ino;
1952 FINISH_INODE_LOOP(ctx, ino, &pctx, failed_csum);
2122 pctx.ino = ctx->stashed_ino = inodes_to_process[i].ino;
2125 printf("%u ", pctx.ino);
2128 pctx.ino);
2163 ret = ib_a->ino - ib_b->ino;
2170 static void mark_inode_bad(e2fsck_t ctx, ino_t ino)
2188 ext2fs_mark_inode_bitmap2(ctx->inode_bad_map, ino);
2191 static void add_encrypted_dir(e2fsck_t ctx, ino_t ino)
2200 pctx.errcode = ext2fs_u32_list_add(ctx->encrypted_dirs, ino);
2329 pctx.ino);
2342 pctx.ino);
2359 ext2_ino_t ino = pctx->ino;
2387 mark_inode_bad(ctx, ino);
2418 printf("Inode %u has EA block %u\n", ino, blk);
2459 pctx->errcode = ext2fs_read_ext_attr3(fs, blk, block_buf, pctx->ino);
2572 pctx->ino);
2619 e2fsck_write_inode(ctx, ino, inode, "check_ext_attr");
2625 ext2_ino_t ino, struct ext2_inode *inode,
2639 pctx->errcode = ext2fs_bmap2(fs, ino, inode, 0, 0, 0, 0, &blk);
2681 void e2fsck_clear_inode(e2fsck_t ctx, ext2_ino_t ino,
2687 ext2fs_icount_store(ctx->inode_link_info, ino, 0);
2697 if (ino < EXT2_FIRST_INODE(ctx->fs->super))
2700 ext2fs_unmark_inode_bitmap2(ctx->inode_dir_map, ino);
2701 ext2fs_unmark_inode_bitmap2(ctx->inode_used_map, ino);
2703 ext2fs_unmark_inode_bitmap2(ctx->inode_reg_map, ino);
2705 ext2fs_unmark_inode_bitmap2(ctx->inode_bad_map, ino);
2713 if (ino == EXT2_BAD_INO)
2716 e2fsck_write_inode(ctx, ino, inode, source);
2830 printf("extent_region(ino=%u, expect=%llu, "
2832 pb->ino, pb->next_lblock,
2918 if (pb->ino != EXT2_RESIZE_INO &&
2990 (unsigned long) pctx->ino, type,
3043 pb->ino, 0,
3055 pctx->ino,
3139 ext2_ino_t ino = pctx->ino;
3149 e2fsck_clear_inode(ctx, ino, inode, 0,
3156 pctx->errcode = ext2fs_extent_open2(fs, ino, inode, &ehandle);
3159 e2fsck_clear_inode(ctx, ino, inode, 0,
3186 pb->eti.ino = pb->ino;
3197 e2fsck_clear_inode(ctx, ino, inode, E2F_FLAG_RESTART,
3205 e2fsck_dir_will_be_rehashed(ctx, ino))
3209 e2fsck_rebuild_extents_later(ctx, ino);
3231 pctx->errcode = ext2fs_add_dir_block2(ctx->fs->dblist, pb->ino, 0, 0);
3238 pctx->errcode = ext2fs_inline_data_size(ctx->fs, pb->ino,
3250 pctx->errcode = ext2fs_add_dir_block2(ctx->fs->dblist, pb->ino, 0, 1);
3271 ext2_ino_t ino = pctx->ino;
3280 pb.ino = ino;
3299 pctx->ino = ino;
3323 e2fsck_write_inode(ctx, ino, inode,
3329 pctx->errcode = ext2fs_block_iterate3(fs, ino,
3344 e2fsck_read_inode(ctx, ino, inode,
3351 printf("bmap rebuild ino=%d\n", ino);
3354 !e2fsck_dir_will_be_rehashed(ctx, ino))
3355 e2fsck_rebuild_extents_later(ctx, ino);
3374 e2fsck_clear_inode(ctx, ino, inode, E2F_FLAG_RESTART,
3380 if (handle_htree(ctx, pctx, ino, inode, block_buf)) {
3384 e2fsck_add_dx_dir(ctx, ino, pb.last_block+1);
3391 e2fsck_clear_inode(ctx, ino, inode, 0, "check_blocks");
3397 if (ino != quota_type2inum(PRJQUOTA, fs->super) &&
3398 (ino == EXT2_ROOT_INO || ino >= EXT2_FIRST_INODE(ctx->fs->super)) &&
3401 ino,
3404 ino, (ea_ibody_quota ?
3415 ino, inode->i_size, pb.last_block, ext2fs_inode_i_blocks(fs, inode),
3427 err = ext2fs_inline_data_size(ctx->fs, pctx->ino,
3508 (ino == EXT2_ROOT_INO || ino >= EXT2_FIRST_INO(fs->super)) &&
3511 pctx->errcode = e2fsck_rebuild_extents_later(ctx, ino);
3517 !(ctx->lost_and_found && ctx->lost_and_found == ino) &&
3520 e2fsck_rehash_dir_later(ctx, ino);
3524 e2fsck_write_inode(ctx, ino, inode, "check_blocks");
3606 pctx->errcode = ext2fs_add_dir_block2(fs->dblist, p->ino, 0, 0);
3619 printf("Process_block, inode %lu, block %u, #%d\n", p->ino, blk,
3628 if (p->previous_block && p->ino != EXT2_RESIZE_INO) {
3640 (unsigned long) pctx->ino, type,
3667 p->ino != EXT2_RESIZE_INO &&
3693 if (p->ino != EXT2_RESIZE_INO &&
3733 if (p->ino == EXT2_RESIZE_INO) {
3767 p->ino, 0,
3775 pctx->errcode = ext2fs_add_dir_block2(fs->dblist, p->ino,
3811 pctx->ino = EXT2_BAD_INO;
4167 static errcode_t pass1_get_blocks(ext2_filsys fs, ext2_ino_t ino,
4173 if ((ino != ctx->stashed_ino) || !ctx->stashed_inode)
4181 static errcode_t pass1_read_inode(ext2_filsys fs, ext2_ino_t ino,
4186 if ((ino != ctx->stashed_ino) || !ctx->stashed_inode)
4192 static errcode_t pass1_write_inode(ext2_filsys fs, ext2_ino_t ino,
4197 if ((ino == ctx->stashed_ino) && ctx->stashed_inode &&
4203 static errcode_t pass1_check_directory(ext2_filsys fs, ext2_ino_t ino)
4207 if ((ino != ctx->stashed_ino) || !ctx->stashed_inode)