mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2025-01-01 10:45:49 +00:00
bcachefs: Fix error path in bch2_mount()
This fixes a bug discovered by generic/388 where sb->s_fs_info was NULL while the superblock was still active - the error path was entirely fubar, and was trying to do something unclear and unecessary. Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
This commit is contained in:
parent
b783fc4d13
commit
178c4873fd
@ -1922,10 +1922,7 @@ static struct dentry *bch2_mount(struct file_system_type *fs_type,
|
||||
return dget(sb->s_root);
|
||||
|
||||
err_put_super:
|
||||
sb->s_fs_info = NULL;
|
||||
c->vfs_sb = NULL;
|
||||
deactivate_locked_super(sb);
|
||||
bch2_fs_stop(c);
|
||||
return ERR_PTR(bch2_err_class(ret));
|
||||
}
|
||||
|
||||
@ -1933,11 +1930,8 @@ static void bch2_kill_sb(struct super_block *sb)
|
||||
{
|
||||
struct bch_fs *c = sb->s_fs_info;
|
||||
|
||||
if (c)
|
||||
c->vfs_sb = NULL;
|
||||
generic_shutdown_super(sb);
|
||||
if (c)
|
||||
bch2_fs_free(c);
|
||||
bch2_fs_free(c);
|
||||
}
|
||||
|
||||
static struct file_system_type bcache_fs_type = {
|
||||
|
Loading…
Reference in New Issue
Block a user