btrfs: open code btrfs_read_fs_root_no_name
All this does is call btrfs_get_fs_root() with check_ref == true. Just use btrfs_get_fs_root() so we don't have a bunch of different helpers that do the same thing. Reviewed-by: Nikolay Borisov <nborisov@suse.com> Signed-off-by: Josef Bacik <josef@toxicpanda.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
Родитель
83db2aadb3
Коммит
3619c94f07
|
@ -3178,7 +3178,7 @@ int __cold open_ctree(struct super_block *sb,
|
|||
location.type = BTRFS_ROOT_ITEM_KEY;
|
||||
location.offset = 0;
|
||||
|
||||
fs_info->fs_root = btrfs_read_fs_root_no_name(fs_info, &location);
|
||||
fs_info->fs_root = btrfs_get_fs_root(fs_info, &location, true);
|
||||
if (IS_ERR(fs_info->fs_root)) {
|
||||
err = PTR_ERR(fs_info->fs_root);
|
||||
btrfs_warn(fs_info, "failed to read fs tree: %d", err);
|
||||
|
|
|
@ -70,12 +70,6 @@ void btrfs_free_fs_roots(struct btrfs_fs_info *fs_info);
|
|||
struct btrfs_root *btrfs_get_fs_root(struct btrfs_fs_info *fs_info,
|
||||
struct btrfs_key *key,
|
||||
bool check_ref);
|
||||
static inline struct btrfs_root *
|
||||
btrfs_read_fs_root_no_name(struct btrfs_fs_info *fs_info,
|
||||
struct btrfs_key *location)
|
||||
{
|
||||
return btrfs_get_fs_root(fs_info, location, true);
|
||||
}
|
||||
|
||||
int btrfs_cleanup_fs_roots(struct btrfs_fs_info *fs_info);
|
||||
void btrfs_btree_balance_dirty(struct btrfs_fs_info *fs_info);
|
||||
|
|
|
@ -77,7 +77,7 @@ static struct dentry *btrfs_get_dentry(struct super_block *sb, u64 objectid,
|
|||
|
||||
index = srcu_read_lock(&fs_info->subvol_srcu);
|
||||
|
||||
root = btrfs_read_fs_root_no_name(fs_info, &key);
|
||||
root = btrfs_get_fs_root(fs_info, &key, true);
|
||||
if (IS_ERR(root)) {
|
||||
err = PTR_ERR(root);
|
||||
goto fail;
|
||||
|
|
|
@ -287,7 +287,7 @@ static int __btrfs_run_defrag_inode(struct btrfs_fs_info *fs_info,
|
|||
|
||||
index = srcu_read_lock(&fs_info->subvol_srcu);
|
||||
|
||||
inode_root = btrfs_read_fs_root_no_name(fs_info, &key);
|
||||
inode_root = btrfs_get_fs_root(fs_info, &key, true);
|
||||
if (IS_ERR(inode_root)) {
|
||||
ret = PTR_ERR(inode_root);
|
||||
goto cleanup;
|
||||
|
|
|
@ -5153,7 +5153,7 @@ static int fixup_tree_root_location(struct btrfs_fs_info *fs_info,
|
|||
|
||||
btrfs_release_path(path);
|
||||
|
||||
new_root = btrfs_read_fs_root_no_name(fs_info, location);
|
||||
new_root = btrfs_get_fs_root(fs_info, location, true);
|
||||
if (IS_ERR(new_root)) {
|
||||
err = PTR_ERR(new_root);
|
||||
goto out;
|
||||
|
|
|
@ -666,7 +666,7 @@ static noinline int create_subvol(struct inode *dir,
|
|||
goto fail;
|
||||
|
||||
key.offset = (u64)-1;
|
||||
new_root = btrfs_read_fs_root_no_name(fs_info, &key);
|
||||
new_root = btrfs_get_fs_root(fs_info, &key, true);
|
||||
if (IS_ERR(new_root)) {
|
||||
ret = PTR_ERR(new_root);
|
||||
btrfs_abort_transaction(trans, ret);
|
||||
|
@ -2179,7 +2179,7 @@ static noinline int search_ioctl(struct inode *inode,
|
|||
key.objectid = sk->tree_id;
|
||||
key.type = BTRFS_ROOT_ITEM_KEY;
|
||||
key.offset = (u64)-1;
|
||||
root = btrfs_read_fs_root_no_name(info, &key);
|
||||
root = btrfs_get_fs_root(info, &key, true);
|
||||
if (IS_ERR(root)) {
|
||||
btrfs_free_path(path);
|
||||
return PTR_ERR(root);
|
||||
|
@ -2314,7 +2314,7 @@ static noinline int btrfs_search_path_in_tree(struct btrfs_fs_info *info,
|
|||
key.objectid = tree_id;
|
||||
key.type = BTRFS_ROOT_ITEM_KEY;
|
||||
key.offset = (u64)-1;
|
||||
root = btrfs_read_fs_root_no_name(info, &key);
|
||||
root = btrfs_get_fs_root(info, &key, true);
|
||||
if (IS_ERR(root)) {
|
||||
ret = PTR_ERR(root);
|
||||
goto out;
|
||||
|
@ -2408,7 +2408,7 @@ static int btrfs_search_path_in_tree_user(struct inode *inode,
|
|||
key.objectid = treeid;
|
||||
key.type = BTRFS_ROOT_ITEM_KEY;
|
||||
key.offset = (u64)-1;
|
||||
root = btrfs_read_fs_root_no_name(fs_info, &key);
|
||||
root = btrfs_get_fs_root(fs_info, &key, true);
|
||||
if (IS_ERR(root)) {
|
||||
ret = PTR_ERR(root);
|
||||
goto out;
|
||||
|
@ -2653,7 +2653,7 @@ static int btrfs_ioctl_get_subvol_info(struct file *file, void __user *argp)
|
|||
key.objectid = BTRFS_I(inode)->root->root_key.objectid;
|
||||
key.type = BTRFS_ROOT_ITEM_KEY;
|
||||
key.offset = (u64)-1;
|
||||
root = btrfs_read_fs_root_no_name(fs_info, &key);
|
||||
root = btrfs_get_fs_root(fs_info, &key, true);
|
||||
if (IS_ERR(root)) {
|
||||
ret = PTR_ERR(root);
|
||||
goto out;
|
||||
|
@ -3983,7 +3983,7 @@ static long btrfs_ioctl_default_subvol(struct file *file, void __user *argp)
|
|||
location.type = BTRFS_ROOT_ITEM_KEY;
|
||||
location.offset = (u64)-1;
|
||||
|
||||
new_root = btrfs_read_fs_root_no_name(fs_info, &location);
|
||||
new_root = btrfs_get_fs_root(fs_info, &location, true);
|
||||
if (IS_ERR(new_root)) {
|
||||
ret = PTR_ERR(new_root);
|
||||
goto out;
|
||||
|
|
|
@ -653,7 +653,7 @@ static int scrub_print_warning_inode(u64 inum, u64 offset, u64 root,
|
|||
root_key.objectid = root;
|
||||
root_key.type = BTRFS_ROOT_ITEM_KEY;
|
||||
root_key.offset = (u64)-1;
|
||||
local_root = btrfs_read_fs_root_no_name(fs_info, &root_key);
|
||||
local_root = btrfs_get_fs_root(fs_info, &root_key, true);
|
||||
if (IS_ERR(local_root)) {
|
||||
ret = PTR_ERR(local_root);
|
||||
goto err;
|
||||
|
|
|
@ -7195,7 +7195,7 @@ long btrfs_ioctl_send(struct file *mnt_file, struct btrfs_ioctl_send_args *arg)
|
|||
|
||||
index = srcu_read_lock(&fs_info->subvol_srcu);
|
||||
|
||||
clone_root = btrfs_read_fs_root_no_name(fs_info, &key);
|
||||
clone_root = btrfs_get_fs_root(fs_info, &key, true);
|
||||
if (IS_ERR(clone_root)) {
|
||||
srcu_read_unlock(&fs_info->subvol_srcu, index);
|
||||
ret = PTR_ERR(clone_root);
|
||||
|
@ -7234,7 +7234,7 @@ long btrfs_ioctl_send(struct file *mnt_file, struct btrfs_ioctl_send_args *arg)
|
|||
|
||||
index = srcu_read_lock(&fs_info->subvol_srcu);
|
||||
|
||||
sctx->parent_root = btrfs_read_fs_root_no_name(fs_info, &key);
|
||||
sctx->parent_root = btrfs_get_fs_root(fs_info, &key, true);
|
||||
if (IS_ERR(sctx->parent_root)) {
|
||||
srcu_read_unlock(&fs_info->subvol_srcu, index);
|
||||
ret = PTR_ERR(sctx->parent_root);
|
||||
|
|
|
@ -1096,7 +1096,7 @@ static char *get_subvol_name_from_objectid(struct btrfs_fs_info *fs_info,
|
|||
key.objectid = subvol_objectid;
|
||||
key.type = BTRFS_ROOT_ITEM_KEY;
|
||||
key.offset = (u64)-1;
|
||||
fs_root = btrfs_read_fs_root_no_name(fs_info, &key);
|
||||
fs_root = btrfs_get_fs_root(fs_info, &key, true);
|
||||
if (IS_ERR(fs_root)) {
|
||||
ret = PTR_ERR(fs_root);
|
||||
goto err;
|
||||
|
|
|
@ -1633,7 +1633,7 @@ static noinline int create_pending_snapshot(struct btrfs_trans_handle *trans,
|
|||
}
|
||||
|
||||
key.offset = (u64)-1;
|
||||
pending->snap = btrfs_read_fs_root_no_name(fs_info, &key);
|
||||
pending->snap = btrfs_get_fs_root(fs_info, &key, true);
|
||||
if (IS_ERR(pending->snap)) {
|
||||
ret = PTR_ERR(pending->snap);
|
||||
btrfs_abort_transaction(trans, ret);
|
||||
|
|
|
@ -6162,7 +6162,7 @@ again:
|
|||
tmp_key.type = BTRFS_ROOT_ITEM_KEY;
|
||||
tmp_key.offset = (u64)-1;
|
||||
|
||||
wc.replay_dest = btrfs_read_fs_root_no_name(fs_info, &tmp_key);
|
||||
wc.replay_dest = btrfs_get_fs_root(fs_info, &tmp_key, true);
|
||||
if (IS_ERR(wc.replay_dest)) {
|
||||
ret = PTR_ERR(wc.replay_dest);
|
||||
|
||||
|
|
|
@ -4424,7 +4424,7 @@ static int btrfs_check_uuid_tree_entry(struct btrfs_fs_info *fs_info,
|
|||
key.objectid = subid;
|
||||
key.type = BTRFS_ROOT_ITEM_KEY;
|
||||
key.offset = (u64)-1;
|
||||
subvol_root = btrfs_read_fs_root_no_name(fs_info, &key);
|
||||
subvol_root = btrfs_get_fs_root(fs_info, &key, true);
|
||||
if (IS_ERR(subvol_root)) {
|
||||
ret = PTR_ERR(subvol_root);
|
||||
if (ret == -ENOENT)
|
||||
|
|
Загрузка…
Ссылка в новой задаче