OSDN Git Service

ext4: goto right label 'failed_mount3a'
authorJason Yan <yanaijie@huawei.com>
Fri, 16 Sep 2022 14:15:12 +0000 (22:15 +0800)
committerTheodore Ts'o <tytso@mit.edu>
Sat, 1 Oct 2022 03:46:52 +0000 (23:46 -0400)
Before these two branches neither loaded the journal nor created the
xattr cache. So the right label to goto is 'failed_mount3a'. Although
this did not cause any issues because the error handler validated if the
pointer is null. However this still made me confused when reading
the code. So it's still worth to modify to goto the right label.

Signed-off-by: Jason Yan <yanaijie@huawei.com>
Reviewed-by: Jan Kara <jack@suse.cz>
Reviewed-by: Ritesh Harjani (IBM) <ritesh.list@gmail.com>
Link: https://lore.kernel.org/r/20220916141527.1012715-2-yanaijie@huawei.com
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
fs/ext4/super.c

index 4eb18c4..016b341 100644 (file)
@@ -5053,30 +5053,30 @@ static int __ext4_fill_super(struct fs_context *fc, struct super_block *sb)
                   ext4_has_feature_journal_needs_recovery(sb)) {
                ext4_msg(sb, KERN_ERR, "required journal recovery "
                       "suppressed and not mounted read-only");
-               goto failed_mount_wq;
+               goto failed_mount3a;
        } else {
                /* Nojournal mode, all journal mount options are illegal */
                if (test_opt2(sb, EXPLICIT_JOURNAL_CHECKSUM)) {
                        ext4_msg(sb, KERN_ERR, "can't mount with "
                                 "journal_checksum, fs mounted w/o journal");
-                       goto failed_mount_wq;
+                       goto failed_mount3a;
                }
                if (test_opt(sb, JOURNAL_ASYNC_COMMIT)) {
                        ext4_msg(sb, KERN_ERR, "can't mount with "
                                 "journal_async_commit, fs mounted w/o journal");
-                       goto failed_mount_wq;
+                       goto failed_mount3a;
                }
                if (sbi->s_commit_interval != JBD2_DEFAULT_MAX_COMMIT_AGE*HZ) {
                        ext4_msg(sb, KERN_ERR, "can't mount with "
                                 "commit=%lu, fs mounted w/o journal",
                                 sbi->s_commit_interval / HZ);
-                       goto failed_mount_wq;
+                       goto failed_mount3a;
                }
                if (EXT4_MOUNT_DATA_FLAGS &
                    (sbi->s_mount_opt ^ sbi->s_def_mount_opt)) {
                        ext4_msg(sb, KERN_ERR, "can't mount with "
                                 "data=, fs mounted w/o journal");
-                       goto failed_mount_wq;
+                       goto failed_mount3a;
                }
                sbi->s_def_mount_opt &= ~EXT4_MOUNT_JOURNAL_CHECKSUM;
                clear_opt(sb, JOURNAL_CHECKSUM);