|
@@ -1460,6 +1460,7 @@ exit_journal:
|
|
|
EXT4_DESC_PER_BLOCK(sb));
|
|
|
int meta_bg = EXT4_HAS_INCOMPAT_FEATURE(sb,
|
|
|
EXT4_FEATURE_INCOMPAT_META_BG);
|
|
|
+ sector_t old_gdb = 0;
|
|
|
|
|
|
update_backups(sb, sbi->s_sbh->b_blocknr, (char *)es,
|
|
|
sizeof(struct ext4_super_block), 0);
|
|
@@ -1467,8 +1468,11 @@ exit_journal:
|
|
|
struct buffer_head *gdb_bh;
|
|
|
|
|
|
gdb_bh = sbi->s_group_desc[gdb_num];
|
|
|
+ if (old_gdb == gdb_bh->b_blocknr)
|
|
|
+ continue;
|
|
|
update_backups(sb, gdb_bh->b_blocknr, gdb_bh->b_data,
|
|
|
gdb_bh->b_size, meta_bg);
|
|
|
+ old_gdb = gdb_bh->b_blocknr;
|
|
|
}
|
|
|
}
|
|
|
exit:
|