]> git.proxmox.com Git - mirror_ubuntu-focal-kernel.git/commitdiff
reiserfs: Fix spurious unlock in reiserfs_fill_super() error handling
authorJan Kara <jack@suse.cz>
Thu, 12 Dec 2019 10:35:58 +0000 (11:35 +0100)
committerPaolo Pisati <paolo.pisati@canonical.com>
Mon, 24 Feb 2020 15:19:43 +0000 (16:19 +0100)
BugLink: https://bugs.launchpad.net/bugs/1864488
[ Upstream commit 4d5c1adaf893b8aa52525d2b81995e949bcb3239 ]

When we fail to allocate string for journal device name we jump to
'error' label which tries to unlock reiserfs write lock which is not
held. Jump to 'error_unlocked' instead.

Fixes: f32485be8397 ("reiserfs: delay reiserfs lock until journal initialization")
Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Paolo Pisati <paolo.pisati@canonical.com>
fs/reiserfs/super.c

index d127af64283e3fba12b8ef4406a353a4a021d890..a6bce5b1fb1dcd3cf1889f2ff0a13cc23f5d4ea6 100644 (file)
@@ -1948,7 +1948,7 @@ static int reiserfs_fill_super(struct super_block *s, void *data, int silent)
                if (!sbi->s_jdev) {
                        SWARN(silent, s, "", "Cannot allocate memory for "
                                "journal device name");
-                       goto error;
+                       goto error_unlocked;
                }
        }
 #ifdef CONFIG_QUOTA