diff options
Diffstat (limited to 'fs/btrfs/super.c')
| -rw-r--r-- | fs/btrfs/super.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/fs/btrfs/super.c b/fs/btrfs/super.c index c5586ffd1426..0a3f122dd61f 100644 --- a/fs/btrfs/super.c +++ b/fs/btrfs/super.c | |||
| @@ -1621,6 +1621,7 @@ static struct dentry *btrfs_mount(struct file_system_type *fs_type, int flags, | |||
| 1621 | flags | SB_RDONLY, device_name, data); | 1621 | flags | SB_RDONLY, device_name, data); |
| 1622 | if (IS_ERR(mnt_root)) { | 1622 | if (IS_ERR(mnt_root)) { |
| 1623 | root = ERR_CAST(mnt_root); | 1623 | root = ERR_CAST(mnt_root); |
| 1624 | kfree(subvol_name); | ||
| 1624 | goto out; | 1625 | goto out; |
| 1625 | } | 1626 | } |
| 1626 | 1627 | ||
| @@ -1630,12 +1631,14 @@ static struct dentry *btrfs_mount(struct file_system_type *fs_type, int flags, | |||
| 1630 | if (error < 0) { | 1631 | if (error < 0) { |
| 1631 | root = ERR_PTR(error); | 1632 | root = ERR_PTR(error); |
| 1632 | mntput(mnt_root); | 1633 | mntput(mnt_root); |
| 1634 | kfree(subvol_name); | ||
| 1633 | goto out; | 1635 | goto out; |
| 1634 | } | 1636 | } |
| 1635 | } | 1637 | } |
| 1636 | } | 1638 | } |
| 1637 | if (IS_ERR(mnt_root)) { | 1639 | if (IS_ERR(mnt_root)) { |
| 1638 | root = ERR_CAST(mnt_root); | 1640 | root = ERR_CAST(mnt_root); |
| 1641 | kfree(subvol_name); | ||
| 1639 | goto out; | 1642 | goto out; |
| 1640 | } | 1643 | } |
| 1641 | 1644 | ||
