Skip to content

Commit 124e7c6

Browse files
krisman-at-collaboratytso
authored andcommitted
ext4: fix error code saved on super block during file system abort
ext4_abort will eventually call ext4_errno_to_code, which translates the errno to an EXT4_ERR specific error. This means that ext4_abort expects an errno. By using EXT4_ERR_ here, it gets misinterpreted (as an errno), and ends up saving EXT4_ERR_EBUSY on the superblock during an abort, which makes no sense. ESHUTDOWN will get properly translated to EXT4_ERR_SHUTDOWN, so use that instead. Signed-off-by: Gabriel Krisman Bertazi <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Theodore Ts'o <[email protected]>
1 parent 1ebf217 commit 124e7c6

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

fs/ext4/super.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5820,7 +5820,7 @@ static int ext4_remount(struct super_block *sb, int *flags, char *data)
58205820
}
58215821

58225822
if (ext4_test_mount_flag(sb, EXT4_MF_FS_ABORTED))
5823-
ext4_abort(sb, EXT4_ERR_ESHUTDOWN, "Abort forced by user");
5823+
ext4_abort(sb, ESHUTDOWN, "Abort forced by user");
58245824

58255825
sb->s_flags = (sb->s_flags & ~SB_POSIXACL) |
58265826
(test_opt(sb, POSIX_ACL) ? SB_POSIXACL : 0);

0 commit comments

Comments
 (0)