mirror of https://gitee.com/openkylin/linux.git
btrfs: Remove redundant checks from btrfs_alloc_data_chunk_ondemand
Many commits ago the data space_info in alloc_data_chunk_ondemand used to be
acquired from the inode. At that point commit
33b4d47f5e
("Btrfs: deal with NULL space info") got introduced to deal with
spurios cases where the space info could be null, following a rebalance.
Nowadays, however, the space info is referenced directly from the btrfs_fs_info
struct which is initialised at filesystem mount time. This makes the null
checks redundant, so remove them.
Signed-off-by: Nikolay Borisov <nborisov@suse.com>
Reviewed-by: David Sterba <dsterba@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
7bdd6277e0
commit
1174cade81
|
@ -4199,9 +4199,9 @@ static u64 btrfs_space_info_used(struct btrfs_space_info *s_info,
|
|||
|
||||
int btrfs_alloc_data_chunk_ondemand(struct btrfs_inode *inode, u64 bytes)
|
||||
{
|
||||
struct btrfs_space_info *data_sinfo;
|
||||
struct btrfs_root *root = inode->root;
|
||||
struct btrfs_fs_info *fs_info = root->fs_info;
|
||||
struct btrfs_space_info *data_sinfo = fs_info->data_sinfo;
|
||||
u64 used;
|
||||
int ret = 0;
|
||||
int need_commit = 2;
|
||||
|
@ -4215,10 +4215,6 @@ int btrfs_alloc_data_chunk_ondemand(struct btrfs_inode *inode, u64 bytes)
|
|||
ASSERT(current->journal_info);
|
||||
}
|
||||
|
||||
data_sinfo = fs_info->data_sinfo;
|
||||
if (!data_sinfo)
|
||||
goto alloc;
|
||||
|
||||
again:
|
||||
/* make sure we have enough space to handle the data first */
|
||||
spin_lock(&data_sinfo->lock);
|
||||
|
@ -4236,7 +4232,7 @@ int btrfs_alloc_data_chunk_ondemand(struct btrfs_inode *inode, u64 bytes)
|
|||
|
||||
data_sinfo->force_alloc = CHUNK_ALLOC_FORCE;
|
||||
spin_unlock(&data_sinfo->lock);
|
||||
alloc:
|
||||
|
||||
alloc_target = btrfs_data_alloc_profile(fs_info);
|
||||
/*
|
||||
* It is ugly that we don't call nolock join
|
||||
|
@ -4264,9 +4260,6 @@ int btrfs_alloc_data_chunk_ondemand(struct btrfs_inode *inode, u64 bytes)
|
|||
}
|
||||
}
|
||||
|
||||
if (!data_sinfo)
|
||||
data_sinfo = fs_info->data_sinfo;
|
||||
|
||||
goto again;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue