]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
ext4: save error to disk in __ext4_grp_locked_error()
authorZhouyi Zhou <zhouzhouyi@gmail.com>
Wed, 10 Jan 2018 05:34:19 +0000 (00:34 -0500)
committerTheodore Ts'o <tytso@mit.edu>
Wed, 10 Jan 2018 05:34:19 +0000 (00:34 -0500)
In the function __ext4_grp_locked_error(), __save_error_info()
is called to save error info in super block block, but does not sync
that information to disk to info the subsequence fsck after reboot.

This patch writes the error information to disk.  After this patch,
I think there is no obvious EXT4 error handle branches which leads to
"Remounting filesystem read-only" will leave the disk partition miss
the subsequence fsck.

Signed-off-by: Zhouyi Zhou <zhouzhouyi@gmail.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Cc: stable@vger.kernel.org
fs/ext4/super.c

index 2a7faf94bb908da4273f5d85b639373638bfd6cd..be71f24a75a004688c99e3e591ea822301df6e32 100644 (file)
@@ -743,6 +743,7 @@ __acquires(bitlock)
        }
 
        ext4_unlock_group(sb, grp);
+       ext4_commit_super(sb, 1);
        ext4_handle_error(sb);
        /*
         * We only get here in the ERRORS_RO case; relocking the group