btrfs: Remove fs_info from btrfs_del_root_ref
It can be referenced from the passed transaction handle. Signed-off-by: Lu Fengqi <lufq.fnst@cn.fujitsu.com> Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
ab9ce7d42b
commit
3ee1c5530e
|
@ -2988,10 +2988,9 @@ int btrfs_add_root_ref(struct btrfs_trans_handle *trans,
|
||||||
struct btrfs_fs_info *fs_info,
|
struct btrfs_fs_info *fs_info,
|
||||||
u64 root_id, u64 ref_id, u64 dirid, u64 sequence,
|
u64 root_id, u64 ref_id, u64 dirid, u64 sequence,
|
||||||
const char *name, int name_len);
|
const char *name, int name_len);
|
||||||
int btrfs_del_root_ref(struct btrfs_trans_handle *trans,
|
int btrfs_del_root_ref(struct btrfs_trans_handle *trans, u64 root_id,
|
||||||
struct btrfs_fs_info *fs_info,
|
u64 ref_id, u64 dirid, u64 *sequence, const char *name,
|
||||||
u64 root_id, u64 ref_id, u64 dirid, u64 *sequence,
|
int name_len);
|
||||||
const char *name, int name_len);
|
|
||||||
int btrfs_del_root(struct btrfs_trans_handle *trans,
|
int btrfs_del_root(struct btrfs_trans_handle *trans,
|
||||||
const struct btrfs_key *key);
|
const struct btrfs_key *key);
|
||||||
int btrfs_insert_root(struct btrfs_trans_handle *trans, struct btrfs_root *root,
|
int btrfs_insert_root(struct btrfs_trans_handle *trans, struct btrfs_root *root,
|
||||||
|
|
|
@ -4085,7 +4085,6 @@ static int btrfs_unlink_subvol(struct btrfs_trans_handle *trans,
|
||||||
struct inode *dir, u64 objectid,
|
struct inode *dir, u64 objectid,
|
||||||
const char *name, int name_len)
|
const char *name, int name_len)
|
||||||
{
|
{
|
||||||
struct btrfs_fs_info *fs_info = root->fs_info;
|
|
||||||
struct btrfs_path *path;
|
struct btrfs_path *path;
|
||||||
struct extent_buffer *leaf;
|
struct extent_buffer *leaf;
|
||||||
struct btrfs_dir_item *di;
|
struct btrfs_dir_item *di;
|
||||||
|
@ -4118,9 +4117,8 @@ static int btrfs_unlink_subvol(struct btrfs_trans_handle *trans,
|
||||||
}
|
}
|
||||||
btrfs_release_path(path);
|
btrfs_release_path(path);
|
||||||
|
|
||||||
ret = btrfs_del_root_ref(trans, fs_info, objectid,
|
ret = btrfs_del_root_ref(trans, objectid, root->root_key.objectid,
|
||||||
root->root_key.objectid, dir_ino,
|
dir_ino, &index, name, name_len);
|
||||||
&index, name, name_len);
|
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
if (ret != -ENOENT) {
|
if (ret != -ENOENT) {
|
||||||
btrfs_abort_transaction(trans, ret);
|
btrfs_abort_transaction(trans, ret);
|
||||||
|
@ -6439,7 +6437,7 @@ fail_dir_item:
|
||||||
if (unlikely(ino == BTRFS_FIRST_FREE_OBJECTID)) {
|
if (unlikely(ino == BTRFS_FIRST_FREE_OBJECTID)) {
|
||||||
u64 local_index;
|
u64 local_index;
|
||||||
int err;
|
int err;
|
||||||
err = btrfs_del_root_ref(trans, fs_info, key.objectid,
|
err = btrfs_del_root_ref(trans, key.objectid,
|
||||||
root->root_key.objectid, parent_ino,
|
root->root_key.objectid, parent_ino,
|
||||||
&local_index, name, name_len);
|
&local_index, name, name_len);
|
||||||
|
|
||||||
|
|
|
@ -341,13 +341,12 @@ out:
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
int btrfs_del_root_ref(struct btrfs_trans_handle *trans,
|
int btrfs_del_root_ref(struct btrfs_trans_handle *trans, u64 root_id,
|
||||||
struct btrfs_fs_info *fs_info,
|
u64 ref_id, u64 dirid, u64 *sequence, const char *name,
|
||||||
u64 root_id, u64 ref_id, u64 dirid, u64 *sequence,
|
int name_len)
|
||||||
const char *name, int name_len)
|
|
||||||
|
|
||||||
{
|
{
|
||||||
struct btrfs_root *tree_root = fs_info->tree_root;
|
struct btrfs_root *tree_root = trans->fs_info->tree_root;
|
||||||
struct btrfs_path *path;
|
struct btrfs_path *path;
|
||||||
struct btrfs_root_ref *ref;
|
struct btrfs_root_ref *ref;
|
||||||
struct extent_buffer *leaf;
|
struct extent_buffer *leaf;
|
||||||
|
|
Loading…
Reference in New Issue