Skip to content

Commit

Permalink
btrfs: make free_fs_info() call ->kill_sb() unconditional
Browse files Browse the repository at this point in the history
... and don't bother with it after btrfs_fill_super() failure -
->kill_sb() (unlike ->put_super()) will be called even if we
have not got non-NULL ->s_root.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
  • Loading branch information
Al Viro committed Jan 9, 2012
1 parent be7e095 commit d22ca7d
Showing 1 changed file with 2 additions and 6 deletions.
8 changes: 2 additions & 6 deletions fs/btrfs/super.c
Original file line number Diff line number Diff line change
Expand Up @@ -946,7 +946,6 @@ static struct dentry *btrfs_mount(struct file_system_type *fs_type, int flags,
error = btrfs_fill_super(s, fs_devices, data,
flags & MS_SILENT ? 1 : 0);
if (error) {
free_fs_info(fs_info);
deactivate_locked_super(s);
return ERR_PTR(error);
}
Expand Down Expand Up @@ -1215,12 +1214,9 @@ static int btrfs_statfs(struct dentry *dentry, struct kstatfs *buf)

static void btrfs_kill_super(struct super_block *sb)
{
struct btrfs_fs_info *fs_info = NULL;
if (sb->s_root)
fs_info = btrfs_sb(sb)->fs_info;
struct btrfs_fs_info *fs_info = btrfs_sb(sb)->fs_info;
kill_anon_super(sb);
if (fs_info)
free_fs_info(fs_info);
free_fs_info(fs_info);
}

static struct file_system_type btrfs_fs_type = {
Expand Down

0 comments on commit d22ca7d

Please sign in to comment.