diff options
-rw-r--r-- | fsck/mount.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/fsck/mount.c b/fsck/mount.c index 3fb6a0d..5e805c7 100644 --- a/fsck/mount.c +++ b/fsck/mount.c @@ -980,6 +980,16 @@ int validate_super_block(struct f2fs_sb_info *sbi, enum SB_ADDR sb_addr) MSG(0, "Info: MKFS version\n \"%s\"\n", c.init_version); MSG(0, "Info: FSCK version\n from \"%s\"\n to \"%s\"\n", c.sb_version, c.version); +#if defined(__APPLE__) + if (!c.no_kernel_check && + memcmp(c.sb_version, c.version, VERSION_NAME_LEN)) { + c.auto_fix = 0; + c.fix_on = 1; + memcpy(sbi->raw_super->version, + c.version, VERSION_NAME_LEN); + update_superblock(sbi->raw_super, SB_MASK(sb_addr)); + } +#else if (!c.no_kernel_check) { struct timespec t; u32 prev_time, cur_time, time_diff; @@ -1012,6 +1022,7 @@ int validate_super_block(struct f2fs_sb_info *sbi, enum SB_ADDR sb_addr) update_superblock(sbi->raw_super, SB_MASK(sb_addr)); } out: +#endif print_sb_state(sbi->raw_super); return 0; } |