• Josef Bacik's avatar
    Btrfs: fix error handling in btrfs_get_sb · 0e78340f
    Josef Bacik authored
    If we failed to find the root subvol id, or the subvol=<name>, we would
    deactivate the locked super and close the devices.  The problem is at this point
    we have gotten the SB all setup, which includes setting super_operations, so
    when we'd deactiveate the super, we'd do a close_ctree() which closes the
    devices, so we'd end up closing the devices twice.  So if you do something like
    this
    
    mount /dev/sda1 /mnt/test1
    mount /dev/sda1 /mnt/test2 -o subvol=xxx
    umount /mnt/test1
    
    it would blow up (if subvol xxx doesn't exist).  This patch fixes that problem.
    Thanks,
    Signed-off-by: default avatarJosef Bacik <josef@redhat.com>
    0e78340f
super.c 22.1 KB