btrfs: Remove fs_info from check_system_chunk

It can be referenced from trans since the function is always called
within a transaction.

Signed-off-by: Nikolay Borisov <nborisov@suse.com>
Reviewed-by: Qu Wenruo <wqu@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
Nikolay Borisov 2018-06-20 15:49:07 +03:00 committed by David Sterba
parent c216b2039a
commit 451a2c1303
3 changed files with 6 additions and 7 deletions

View file

@ -2821,8 +2821,7 @@ int btrfs_delayed_refs_qgroup_accounting(struct btrfs_trans_handle *trans,
int btrfs_start_write_no_snapshotting(struct btrfs_root *root); int btrfs_start_write_no_snapshotting(struct btrfs_root *root);
void btrfs_end_write_no_snapshotting(struct btrfs_root *root); void btrfs_end_write_no_snapshotting(struct btrfs_root *root);
void btrfs_wait_for_snapshot_creation(struct btrfs_root *root); void btrfs_wait_for_snapshot_creation(struct btrfs_root *root);
void check_system_chunk(struct btrfs_trans_handle *trans, void check_system_chunk(struct btrfs_trans_handle *trans, const u64 type);
struct btrfs_fs_info *fs_info, const u64 type);
u64 add_new_free_space(struct btrfs_block_group_cache *block_group, u64 add_new_free_space(struct btrfs_block_group_cache *block_group,
u64 start, u64 end); u64 start, u64 end);

View file

@ -4527,9 +4527,9 @@ static u64 get_profile_num_devs(struct btrfs_fs_info *fs_info, u64 type)
* for allocating a chunk, otherwise if it's false, reserve space necessary for * for allocating a chunk, otherwise if it's false, reserve space necessary for
* removing a chunk. * removing a chunk.
*/ */
void check_system_chunk(struct btrfs_trans_handle *trans, void check_system_chunk(struct btrfs_trans_handle *trans, u64 type)
struct btrfs_fs_info *fs_info, u64 type)
{ {
struct btrfs_fs_info *fs_info = trans->fs_info;
struct btrfs_space_info *info; struct btrfs_space_info *info;
u64 left; u64 left;
u64 thresh; u64 thresh;
@ -4668,7 +4668,7 @@ static int do_chunk_alloc(struct btrfs_trans_handle *trans, u64 flags,
* Check if we have enough space in SYSTEM chunk because we may need * Check if we have enough space in SYSTEM chunk because we may need
* to update devices. * to update devices.
*/ */
check_system_chunk(trans, fs_info, flags); check_system_chunk(trans, flags);
ret = btrfs_alloc_chunk(trans, flags); ret = btrfs_alloc_chunk(trans, flags);
trans->allocating_chunk = false; trans->allocating_chunk = false;
@ -9493,7 +9493,7 @@ int btrfs_inc_block_group_ro(struct btrfs_fs_info *fs_info,
if (cache->flags & BTRFS_BLOCK_GROUP_SYSTEM) { if (cache->flags & BTRFS_BLOCK_GROUP_SYSTEM) {
alloc_flags = update_block_group_flags(fs_info, cache->flags); alloc_flags = update_block_group_flags(fs_info, cache->flags);
mutex_lock(&fs_info->chunk_mutex); mutex_lock(&fs_info->chunk_mutex);
check_system_chunk(trans, fs_info, alloc_flags); check_system_chunk(trans, alloc_flags);
mutex_unlock(&fs_info->chunk_mutex); mutex_unlock(&fs_info->chunk_mutex);
} }
mutex_unlock(&fs_info->ro_block_group_mutex); mutex_unlock(&fs_info->ro_block_group_mutex);

View file

@ -2829,7 +2829,7 @@ int btrfs_remove_chunk(struct btrfs_trans_handle *trans,
} }
map = em->map_lookup; map = em->map_lookup;
mutex_lock(&fs_info->chunk_mutex); mutex_lock(&fs_info->chunk_mutex);
check_system_chunk(trans, fs_info, map->type); check_system_chunk(trans, map->type);
mutex_unlock(&fs_info->chunk_mutex); mutex_unlock(&fs_info->chunk_mutex);
/* /*