Commit fbb0ce40 authored by Josef Bacik's avatar Josef Bacik Committed by David Sterba
Browse files

btrfs: hold a ref on the root in btrfs_check_uuid_tree_entry



We lookup the uuid of arbitrary subvolumes, hold a ref on the root while
we're doing this.

Signed-off-by: default avatarJosef Bacik <josef@toxicpanda.com>
Reviewed-by: default avatarDavid Sterba <dsterba@suse.com>
Signed-off-by: default avatarDavid Sterba <dsterba@suse.com>
parent ca2037fb
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -4431,6 +4431,10 @@ static int btrfs_check_uuid_tree_entry(struct btrfs_fs_info *fs_info,
			ret = 1;
		goto out;
	}
	if (!btrfs_grab_fs_root(subvol_root)) {
		ret = 1;
		goto out;
	}

	switch (type) {
	case BTRFS_UUID_KEY_SUBVOL:
@@ -4443,7 +4447,7 @@ static int btrfs_check_uuid_tree_entry(struct btrfs_fs_info *fs_info,
			ret = 1;
		break;
	}

	btrfs_put_fs_root(subvol_root);
out:
	return ret;
}