1 Index: linux-stage/fs/ext4/super.c
2 When ldiskfs run in failover mode whith read-only disk.
3 Part of allocation updates are lost and ldiskfs may fail
4 while mounting this is due to inconsistent state of
5 group-descriptor. Group-descriptor check is added after
7 ===================================================================
8 --- linux-stage/fs/ext4/super.c 2016-11-06 15:15:30.892386878 +0530
9 +++ linux-stage.orig.1/fs/ext4/super.c 2016-11-08 10:56:45.579892189 +0530
10 @@ -3980,11 +3980,6 @@
14 - if (!ext4_check_descriptors(sb, logical_sb_block, &first_not_zeroed)) {
15 - ext4_msg(sb, KERN_ERR, "group descriptors corrupted!");
16 - ret = -EFSCORRUPTED;
20 sbi->s_gdb_count = db_count;
21 get_random_bytes(&sbi->s_next_generation, sizeof(u32));
22 @@ -4104,6 +4100,13 @@
23 sbi->s_journal->j_commit_callback = ext4_journal_commit_callback;
27 + if (!ext4_check_descriptors(sb, logical_sb_block, &first_not_zeroed)) {
28 + ext4_msg(sb, KERN_ERR, "group descriptors corrupted!");
29 + ret = -EFSCORRUPTED;
30 + goto failed_mount_wq;
33 sbi->s_mb_cache = ext4_xattr_create_cache();
34 if (!sbi->s_mb_cache) {
35 ext4_msg(sb, KERN_ERR, "Failed to create an mb_cache");