Home | History | Annotate | Download | only in fsck

Lines Matching refs:sbi

405 static void do_fsck(struct f2fs_sb_info *sbi)
407 struct f2fs_checkpoint *ckpt = F2FS_CKPT(sbi);
411 fsck_init(sbi);
418 if (fsck_chk_meta(sbi)) {
424 fsck_free(sbi);
446 fsck_chk_orphan_node(sbi);
450 fsck_chk_node_blk(sbi, NULL, sbi->root_ino_num,
452 fsck_verify(sbi);
453 fsck_free(sbi);
456 static void do_dump(struct f2fs_sb_info *sbi)
459 struct f2fs_checkpoint *ckpt = F2FS_CKPT(sbi);
463 opt->end_nat = NM_I(sbi)->max_nid;
465 opt->end_sit = SM_I(sbi)->main_segments;
467 opt->end_ssa = SM_I(sbi)->main_segments;
469 nat_dump(sbi);
471 sit_dump(sbi, opt->start_sit, opt->end_sit);
473 ssa_dump(sbi, opt->start_ssa, opt->end_ssa);
475 dump_info_from_blkaddr(sbi, opt->blk_addr);
477 dump_node(sbi, opt->nid, 0);
483 static int do_defrag(struct f2fs_sb_info *sbi)
485 struct f2fs_super_block *sb = F2FS_RAW_SUPER(sbi);
489 if (c.defrag_start < SM_I(sbi)->main_blkaddr)
490 c.defrag_start = SM_I(sbi)->main_blkaddr;
493 c.defrag_len = sbi->blocks_per_seg;
504 if (c.defrag_target < SM_I(sbi)->main_blkaddr ||
522 return f2fs_defragment(sbi, c.defrag_start, c.defrag_len,
532 static int do_resize(struct f2fs_sb_info *sbi)
534 struct f2fs_super_block *sb = F2FS_RAW_SUPER(sbi);
551 return f2fs_resize(sbi);
554 static int do_sload(struct f2fs_sb_info *sbi)
564 return f2fs_sload(sbi, c.from_dir, c.mount_point, NULL, NULL);
569 struct f2fs_sb_info *sbi;
595 gfsck.sbi.fsck = &gfsck;
596 sbi = &gfsck.sbi;
598 ret = f2fs_do_mount(sbi);
609 do_fsck(sbi);
612 do_dump(sbi);
616 ret = do_defrag(sbi);
621 if (do_resize(sbi))
625 do_sload(sbi);
630 f2fs_do_umount(sbi);
656 if (sbi->ckpt)
657 free(sbi->ckpt);
658 if (sbi->raw_super)
659 free(sbi->raw_super);