mirror of https://github.com/torvalds/linux.git
btrfs: remove fs_info argument from btrfs_reserve_metadata_bytes()
We don't need it since we can grab fs_info from the given space_info. So remove the fs_info argument. Reviewed-by: Qu Wenruo <wqu@suse.com> Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> Reviewed-by: Anand Jain <asj@kernel.org> Signed-off-by: Filipe Manana <fdmanana@suse.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
30b87a2319
commit
a1359d06d7
|
|
@ -218,8 +218,7 @@ int btrfs_block_rsv_add(struct btrfs_fs_info *fs_info,
|
||||||
if (num_bytes == 0)
|
if (num_bytes == 0)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
ret = btrfs_reserve_metadata_bytes(fs_info, block_rsv->space_info,
|
ret = btrfs_reserve_metadata_bytes(block_rsv->space_info, num_bytes, flush);
|
||||||
num_bytes, flush);
|
|
||||||
if (!ret)
|
if (!ret)
|
||||||
btrfs_block_rsv_add_bytes(block_rsv, num_bytes, true);
|
btrfs_block_rsv_add_bytes(block_rsv, num_bytes, true);
|
||||||
|
|
||||||
|
|
@ -259,8 +258,7 @@ int btrfs_block_rsv_refill(struct btrfs_fs_info *fs_info,
|
||||||
if (!ret)
|
if (!ret)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
ret = btrfs_reserve_metadata_bytes(fs_info, block_rsv->space_info,
|
ret = btrfs_reserve_metadata_bytes(block_rsv->space_info, num_bytes, flush);
|
||||||
num_bytes, flush);
|
|
||||||
if (!ret) {
|
if (!ret) {
|
||||||
btrfs_block_rsv_add_bytes(block_rsv, num_bytes, false);
|
btrfs_block_rsv_add_bytes(block_rsv, num_bytes, false);
|
||||||
return 0;
|
return 0;
|
||||||
|
|
@ -530,8 +528,8 @@ struct btrfs_block_rsv *btrfs_use_block_rsv(struct btrfs_trans_handle *trans,
|
||||||
block_rsv->type, ret);
|
block_rsv->type, ret);
|
||||||
}
|
}
|
||||||
try_reserve:
|
try_reserve:
|
||||||
ret = btrfs_reserve_metadata_bytes(fs_info, block_rsv->space_info,
|
ret = btrfs_reserve_metadata_bytes(block_rsv->space_info, blocksize,
|
||||||
blocksize, BTRFS_RESERVE_NO_FLUSH);
|
BTRFS_RESERVE_NO_FLUSH);
|
||||||
if (!ret)
|
if (!ret)
|
||||||
return block_rsv;
|
return block_rsv;
|
||||||
/*
|
/*
|
||||||
|
|
@ -552,7 +550,7 @@ struct btrfs_block_rsv *btrfs_use_block_rsv(struct btrfs_trans_handle *trans,
|
||||||
* one last time to force a reservation if there's enough actual space
|
* one last time to force a reservation if there's enough actual space
|
||||||
* on disk to make the reservation.
|
* on disk to make the reservation.
|
||||||
*/
|
*/
|
||||||
ret = btrfs_reserve_metadata_bytes(fs_info, block_rsv->space_info, blocksize,
|
ret = btrfs_reserve_metadata_bytes(block_rsv->space_info, blocksize,
|
||||||
BTRFS_RESERVE_FLUSH_EMERGENCY);
|
BTRFS_RESERVE_FLUSH_EMERGENCY);
|
||||||
if (!ret)
|
if (!ret)
|
||||||
return block_rsv;
|
return block_rsv;
|
||||||
|
|
|
||||||
|
|
@ -358,8 +358,8 @@ int btrfs_delalloc_reserve_metadata(struct btrfs_inode *inode, u64 num_bytes,
|
||||||
noflush);
|
noflush);
|
||||||
if (ret)
|
if (ret)
|
||||||
return ret;
|
return ret;
|
||||||
ret = btrfs_reserve_metadata_bytes(fs_info, block_rsv->space_info,
|
ret = btrfs_reserve_metadata_bytes(block_rsv->space_info, meta_reserve,
|
||||||
meta_reserve, flush);
|
flush);
|
||||||
if (ret) {
|
if (ret) {
|
||||||
btrfs_qgroup_free_meta_prealloc(root, qgroup_reserve);
|
btrfs_qgroup_free_meta_prealloc(root, qgroup_reserve);
|
||||||
return ret;
|
return ret;
|
||||||
|
|
|
||||||
|
|
@ -228,7 +228,7 @@ int btrfs_delayed_refs_rsv_refill(struct btrfs_fs_info *fs_info,
|
||||||
if (!num_bytes)
|
if (!num_bytes)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
ret = btrfs_reserve_metadata_bytes(fs_info, space_info, num_bytes, flush);
|
ret = btrfs_reserve_metadata_bytes(space_info, num_bytes, flush);
|
||||||
if (ret)
|
if (ret)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1848,7 +1848,6 @@ static int __reserve_bytes(struct btrfs_space_info *space_info, u64 orig_bytes,
|
||||||
/*
|
/*
|
||||||
* Try to reserve metadata bytes from the block_rsv's space.
|
* Try to reserve metadata bytes from the block_rsv's space.
|
||||||
*
|
*
|
||||||
* @fs_info: the filesystem
|
|
||||||
* @space_info: the space_info we're allocating for
|
* @space_info: the space_info we're allocating for
|
||||||
* @orig_bytes: number of bytes we want
|
* @orig_bytes: number of bytes we want
|
||||||
* @flush: whether or not we can flush to make our reservation
|
* @flush: whether or not we can flush to make our reservation
|
||||||
|
|
@ -1860,8 +1859,7 @@ static int __reserve_bytes(struct btrfs_space_info *space_info, u64 orig_bytes,
|
||||||
* regain reservations will be made and this will fail if there is not enough
|
* regain reservations will be made and this will fail if there is not enough
|
||||||
* space already.
|
* space already.
|
||||||
*/
|
*/
|
||||||
int btrfs_reserve_metadata_bytes(struct btrfs_fs_info *fs_info,
|
int btrfs_reserve_metadata_bytes(struct btrfs_space_info *space_info,
|
||||||
struct btrfs_space_info *space_info,
|
|
||||||
u64 orig_bytes,
|
u64 orig_bytes,
|
||||||
enum btrfs_reserve_flush_enum flush)
|
enum btrfs_reserve_flush_enum flush)
|
||||||
{
|
{
|
||||||
|
|
@ -1869,6 +1867,8 @@ int btrfs_reserve_metadata_bytes(struct btrfs_fs_info *fs_info,
|
||||||
|
|
||||||
ret = __reserve_bytes(space_info, orig_bytes, flush);
|
ret = __reserve_bytes(space_info, orig_bytes, flush);
|
||||||
if (ret == -ENOSPC) {
|
if (ret == -ENOSPC) {
|
||||||
|
struct btrfs_fs_info *fs_info = space_info->fs_info;
|
||||||
|
|
||||||
trace_btrfs_space_reservation(fs_info, "space_info:enospc",
|
trace_btrfs_space_reservation(fs_info, "space_info:enospc",
|
||||||
space_info->flags, orig_bytes, 1);
|
space_info->flags, orig_bytes, 1);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -278,8 +278,7 @@ u64 __pure btrfs_space_info_used(const struct btrfs_space_info *s_info,
|
||||||
void btrfs_clear_space_info_full(struct btrfs_fs_info *info);
|
void btrfs_clear_space_info_full(struct btrfs_fs_info *info);
|
||||||
void btrfs_dump_space_info(struct btrfs_space_info *info, u64 bytes,
|
void btrfs_dump_space_info(struct btrfs_space_info *info, u64 bytes,
|
||||||
bool dump_block_groups);
|
bool dump_block_groups);
|
||||||
int btrfs_reserve_metadata_bytes(struct btrfs_fs_info *fs_info,
|
int btrfs_reserve_metadata_bytes(struct btrfs_space_info *space_info,
|
||||||
struct btrfs_space_info *space_info,
|
|
||||||
u64 orig_bytes,
|
u64 orig_bytes,
|
||||||
enum btrfs_reserve_flush_enum flush);
|
enum btrfs_reserve_flush_enum flush);
|
||||||
void btrfs_try_granting_tickets(struct btrfs_space_info *space_info);
|
void btrfs_try_granting_tickets(struct btrfs_space_info *space_info);
|
||||||
|
|
|
||||||
|
|
@ -575,7 +575,7 @@ static int btrfs_reserve_trans_metadata(struct btrfs_fs_info *fs_info,
|
||||||
* We want to reserve all the bytes we may need all at once, so we only
|
* We want to reserve all the bytes we may need all at once, so we only
|
||||||
* do 1 enospc flushing cycle per transaction start.
|
* do 1 enospc flushing cycle per transaction start.
|
||||||
*/
|
*/
|
||||||
ret = btrfs_reserve_metadata_bytes(fs_info, si, bytes, flush);
|
ret = btrfs_reserve_metadata_bytes(si, bytes, flush);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* If we are an emergency flush, which can steal from the global block
|
* If we are an emergency flush, which can steal from the global block
|
||||||
|
|
@ -585,7 +585,7 @@ static int btrfs_reserve_trans_metadata(struct btrfs_fs_info *fs_info,
|
||||||
if (ret && flush == BTRFS_RESERVE_FLUSH_ALL_STEAL) {
|
if (ret && flush == BTRFS_RESERVE_FLUSH_ALL_STEAL) {
|
||||||
bytes -= *delayed_refs_bytes;
|
bytes -= *delayed_refs_bytes;
|
||||||
*delayed_refs_bytes = 0;
|
*delayed_refs_bytes = 0;
|
||||||
ret = btrfs_reserve_metadata_bytes(fs_info, si, bytes, flush);
|
ret = btrfs_reserve_metadata_bytes(si, bytes, flush);
|
||||||
}
|
}
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue