diff --git a/fs/ext4/super.c b/fs/ext4/super.c index 96792a06fd8da7ae44e2c86a7c0ab8bb3c1d8425..ffac35e66bd978dcb7cc9c2c8e0fca2c4ac45e3d 100644 --- a/fs/ext4/super.c +++ b/fs/ext4/super.c @@ -5778,11 +5778,13 @@ static int ext4_clear_journal_err(struct super_block *sb, errstr = ext4_decode_error(sb, j_errno, nbuf); ext4_warning(sb, "Filesystem error recorded " "from previous mount: %s", errstr); - ext4_warning(sb, "Marking fs in need of filesystem check."); EXT4_SB(sb)->s_mount_state |= EXT4_ERROR_FS; es->s_state |= cpu_to_le16(EXT4_ERROR_FS); - ext4_commit_super(sb); + j_errno = ext4_commit_super(sb); + if (j_errno) + return j_errno; + ext4_warning(sb, "Marked fs in need of filesystem check."); jbd2_journal_clear_err(journal); jbd2_journal_update_sb_errno(journal);