• Home
  • Raw
  • Download

Lines Matching refs:ctx

54 errcode_t e2fsck_reset_context(e2fsck_t ctx)  in e2fsck_reset_context()  argument
58 ctx->flags &= E2F_RESET_FLAGS; in e2fsck_reset_context()
59 ctx->lost_and_found = 0; in e2fsck_reset_context()
60 ctx->bad_lost_and_found = 0; in e2fsck_reset_context()
61 if (ctx->inode_used_map) { in e2fsck_reset_context()
62 ext2fs_free_inode_bitmap(ctx->inode_used_map); in e2fsck_reset_context()
63 ctx->inode_used_map = 0; in e2fsck_reset_context()
65 if (ctx->inode_dir_map) { in e2fsck_reset_context()
66 ext2fs_free_inode_bitmap(ctx->inode_dir_map); in e2fsck_reset_context()
67 ctx->inode_dir_map = 0; in e2fsck_reset_context()
69 if (ctx->inode_reg_map) { in e2fsck_reset_context()
70 ext2fs_free_inode_bitmap(ctx->inode_reg_map); in e2fsck_reset_context()
71 ctx->inode_reg_map = 0; in e2fsck_reset_context()
73 if (ctx->block_found_map) { in e2fsck_reset_context()
74 ext2fs_free_block_bitmap(ctx->block_found_map); in e2fsck_reset_context()
75 ctx->block_found_map = 0; in e2fsck_reset_context()
77 if (ctx->inode_link_info) { in e2fsck_reset_context()
78 ext2fs_free_icount(ctx->inode_link_info); in e2fsck_reset_context()
79 ctx->inode_link_info = 0; in e2fsck_reset_context()
81 if (ctx->journal_io) { in e2fsck_reset_context()
82 if (ctx->fs && ctx->fs->io != ctx->journal_io) in e2fsck_reset_context()
83 io_channel_close(ctx->journal_io); in e2fsck_reset_context()
84 ctx->journal_io = 0; in e2fsck_reset_context()
86 if (ctx->fs && ctx->fs->dblist) { in e2fsck_reset_context()
87 ext2fs_free_dblist(ctx->fs->dblist); in e2fsck_reset_context()
88 ctx->fs->dblist = 0; in e2fsck_reset_context()
90 e2fsck_free_dir_info(ctx); in e2fsck_reset_context()
92 e2fsck_free_dx_dir_info(ctx); in e2fsck_reset_context()
94 if (ctx->refcount) { in e2fsck_reset_context()
95 ea_refcount_free(ctx->refcount); in e2fsck_reset_context()
96 ctx->refcount = 0; in e2fsck_reset_context()
98 if (ctx->refcount_extra) { in e2fsck_reset_context()
99 ea_refcount_free(ctx->refcount_extra); in e2fsck_reset_context()
100 ctx->refcount_extra = 0; in e2fsck_reset_context()
102 if (ctx->block_dup_map) { in e2fsck_reset_context()
103 ext2fs_free_block_bitmap(ctx->block_dup_map); in e2fsck_reset_context()
104 ctx->block_dup_map = 0; in e2fsck_reset_context()
106 if (ctx->block_ea_map) { in e2fsck_reset_context()
107 ext2fs_free_block_bitmap(ctx->block_ea_map); in e2fsck_reset_context()
108 ctx->block_ea_map = 0; in e2fsck_reset_context()
110 if (ctx->inode_bb_map) { in e2fsck_reset_context()
111 ext2fs_free_inode_bitmap(ctx->inode_bb_map); in e2fsck_reset_context()
112 ctx->inode_bb_map = 0; in e2fsck_reset_context()
114 if (ctx->inode_bad_map) { in e2fsck_reset_context()
115 ext2fs_free_inode_bitmap(ctx->inode_bad_map); in e2fsck_reset_context()
116 ctx->inode_bad_map = 0; in e2fsck_reset_context()
118 if (ctx->inode_imagic_map) { in e2fsck_reset_context()
119 ext2fs_free_inode_bitmap(ctx->inode_imagic_map); in e2fsck_reset_context()
120 ctx->inode_imagic_map = 0; in e2fsck_reset_context()
122 if (ctx->dirs_to_hash) { in e2fsck_reset_context()
123 ext2fs_u32_list_free(ctx->dirs_to_hash); in e2fsck_reset_context()
124 ctx->dirs_to_hash = 0; in e2fsck_reset_context()
130 if (ctx->invalid_inode_bitmap_flag) { in e2fsck_reset_context()
131 ext2fs_free_mem(&ctx->invalid_inode_bitmap_flag); in e2fsck_reset_context()
132 ctx->invalid_inode_bitmap_flag = 0; in e2fsck_reset_context()
134 if (ctx->invalid_block_bitmap_flag) { in e2fsck_reset_context()
135 ext2fs_free_mem(&ctx->invalid_block_bitmap_flag); in e2fsck_reset_context()
136 ctx->invalid_block_bitmap_flag = 0; in e2fsck_reset_context()
138 if (ctx->invalid_inode_table_flag) { in e2fsck_reset_context()
139 ext2fs_free_mem(&ctx->invalid_inode_table_flag); in e2fsck_reset_context()
140 ctx->invalid_inode_table_flag = 0; in e2fsck_reset_context()
142 if (ctx->encrypted_dirs) { in e2fsck_reset_context()
143 ext2fs_u32_list_free(ctx->encrypted_dirs); in e2fsck_reset_context()
144 ctx->encrypted_dirs = 0; in e2fsck_reset_context()
148 ctx->fs_directory_count = 0; in e2fsck_reset_context()
149 ctx->fs_regular_count = 0; in e2fsck_reset_context()
150 ctx->fs_blockdev_count = 0; in e2fsck_reset_context()
151 ctx->fs_chardev_count = 0; in e2fsck_reset_context()
152 ctx->fs_links_count = 0; in e2fsck_reset_context()
153 ctx->fs_symlinks_count = 0; in e2fsck_reset_context()
154 ctx->fs_fast_symlinks_count = 0; in e2fsck_reset_context()
155 ctx->fs_fifo_count = 0; in e2fsck_reset_context()
156 ctx->fs_total_count = 0; in e2fsck_reset_context()
157 ctx->fs_badblocks_count = 0; in e2fsck_reset_context()
158 ctx->fs_sockets_count = 0; in e2fsck_reset_context()
159 ctx->fs_ind_count = 0; in e2fsck_reset_context()
160 ctx->fs_dind_count = 0; in e2fsck_reset_context()
161 ctx->fs_tind_count = 0; in e2fsck_reset_context()
162 ctx->fs_fragmented = 0; in e2fsck_reset_context()
163 ctx->fs_fragmented_dir = 0; in e2fsck_reset_context()
164 ctx->large_files = 0; in e2fsck_reset_context()
167 ctx->extent_depth_count[i] = 0; in e2fsck_reset_context()
170 ctx->superblock = ctx->use_superblock; in e2fsck_reset_context()
175 void e2fsck_free_context(e2fsck_t ctx) in e2fsck_free_context() argument
177 if (!ctx) in e2fsck_free_context()
180 e2fsck_reset_context(ctx); in e2fsck_free_context()
181 if (ctx->blkid) in e2fsck_free_context()
182 blkid_put_cache(ctx->blkid); in e2fsck_free_context()
184 if (ctx->profile) in e2fsck_free_context()
185 profile_release(ctx->profile); in e2fsck_free_context()
187 if (ctx->filesystem_name) in e2fsck_free_context()
188 ext2fs_free_mem(&ctx->filesystem_name); in e2fsck_free_context()
190 if (ctx->device_name) in e2fsck_free_context()
191 ext2fs_free_mem(&ctx->device_name); in e2fsck_free_context()
193 if (ctx->log_fn) in e2fsck_free_context()
194 free(ctx->log_fn); in e2fsck_free_context()
196 ext2fs_free_mem(&ctx); in e2fsck_free_context()
203 typedef void (*pass_t)(e2fsck_t ctx);
211 int e2fsck_run(e2fsck_t ctx) in e2fsck_run() argument
217 if (setjmp(ctx->abort_loc)) { in e2fsck_run()
218 ctx->flags &= ~E2F_FLAG_SETJMP_OK; in e2fsck_run()
219 return (ctx->flags & E2F_FLAG_RUN_RETURN); in e2fsck_run()
221 ctx->flags |= E2F_FLAG_SETJMP_OK; in e2fsck_run()
225 if (ctx->flags & E2F_FLAG_RUN_RETURN) in e2fsck_run()
227 if (e2fsck_mmp_update(ctx->fs)) in e2fsck_run()
228 fatal_error(ctx, 0); in e2fsck_run()
229 e2fsck_pass(ctx); in e2fsck_run()
230 if (ctx->progress) in e2fsck_run()
231 (void) (ctx->progress)(ctx, 0, 0, 0); in e2fsck_run()
233 ctx->flags &= ~E2F_FLAG_SETJMP_OK; in e2fsck_run()
235 if (ctx->flags & E2F_FLAG_RUN_RETURN) in e2fsck_run()
236 return (ctx->flags & E2F_FLAG_RUN_RETURN); in e2fsck_run()